clojure.test.check.clojure-test

*default-test-count*

dynamic

*report-shrinking*

dynamic

If true, a verbose report of the property being tested, the
failing return value, and the arguments provoking that failure is emitted
prior to the start of the shrinking search.

*report-trials*

dynamic

Controls whether property trials should be reported via clojure.test/report.
Valid values include:

* false - no reporting of trials (default)
* a function - will be passed a clojure.test/report-style map containing
:clojure.test.check/property and :clojure.test.check/trial slots
* true - provides quickcheck-style trial reporting (dots) via
`trial-report-dots`

(Note that all reporting requires running `quick-check` within the scope of a
clojure.test run (via `test-ns`, `test-all-vars`, etc.)

Reporting functions offered by clojure.test.check include `trial-report-dots` and
`trial-report-periodic` (which prints more verbose trial progress information
every `*trial-report-period*` milliseconds.

*trial-report-period*

dynamic

Milliseconds between reports emitted by `trial-report-periodic`.

assert-check

(assert-check {:keys [result], :as m})

defspec

macro

(defspec name property)(defspec name num-tests? property)(defspec name options? property)
Defines a new clojure.test test var that uses `quick-check` to verify
[property] with the given [args] (should be a sequence of generators),
[default-times] times by default.  You can call the function defined as [name]
with no arguments to trigger this test directly (i.e., without starting a
wider clojure.test run), with a single argument that will override
[default-times], or with a map containing any of the keys
[:seed :max-size :num-tests].

report-failure

(report-failure property-fun result trial-number failing-params)

report-trial

(report-trial property-fun so-far num-tests)

trial-report-dots

(trial-report-dots {[so-far total] :clojure.test.check.clojure-test/trial})
Intended to be bound as the value of `*report-trials*`; will emit a single
dot every 1000 trials reported.

trial-report-periodic

(trial-report-periodic m)
Intended to be bound as the value of `*report-trials*`; will emit a verbose
status every `*trial-report-period*` milliseconds, like this one:

Passing trial 3286 / 5000 for (your-test-var-name-here) (:)

with-test-out*

(with-test-out* f)