Hey everyone!

I've just released a new version of my library for testing stateful systems
with test.check!

  [org.clojars.czan/stateful-check "0.3.0"]

  https://github.com/czan/stateful-check
  https://clojars.org/org.clojars.czan/stateful-check

Important changes in this version:

  + Updated to test.check 0.7.0

  + *Breaking: *Postconditions now take two states: the prior and the next
states. This means that any postconditions being used with 0.2.0 need to be
changed:

    (fn [state args result]
    arbitrary-logic-for-postcondition)
  ;; needs to change to
  (fn [prev-state next-state args result]
    arbitrary-logic-for-postcondition)

  + *Breaking: *The old `reality-matches-model?` function has been both
renamed (to remove the '?', which implied it was a predicate when it's not)
and deprecated. The `specification-correct?` form below is the preferred
form now.

  + Add a new function, `specification-correct?`, which runs a
stateful-test specification using test.check. If used within a clojure.test
`is` assertion it will also print helpful output:

  (is (specification-correct? queue-spec {:seed 1417059242645}))
  ;;
  ;; FAIL in clojure.lang.PersistentList$EmptyList@1
(form-init1067629020891437332.clj:1)
  ;;    #<0> = (:new)     => #<Atom@53df198e: #<PersistentQueue
clojure.lang.PersistentQueue@1>>
  ;;    #<2> = (:push #<0> 0)     => nil
  ;;    #<3> = (:pop #<0>)        => #<PersistentQueue
clojure.lang.PersistentQueue@1>
  ;; Error while checking postcondition
  ;; Seed:  1417059242645
  ;;
  ;; expected: :pass
  ;;   actual: :fail

I hope somebody finds this useful!

Carlo

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to