Module QCheck_ounit

Conversion of tests to OUnit Tests

val to_ounit_test : ?⁠verbose:bool ‑> ?⁠long:bool ‑> ?⁠rand:Random.State.t ‑> QCheck.Test.t ‑> OUnit.test

to_ounit_test ~rand t wraps t into a OUnit test

val to_ounit_test_cell : ?⁠verbose:bool ‑> ?⁠long:bool ‑> ?⁠rand:Random.State.t ‑> _ QCheck.Test.cell ‑> OUnit.test

Same as to_ounit_test but with a polymorphic test cell

val (>:::) : string ‑> QCheck.Test.t list ‑> OUnit.test

Same as OUnit.>::: but with a list of QCheck tests

val to_ounit2_test : ?⁠rand:Random.State.t ‑> QCheck.Test.t ‑> OUnit2.test

to_ounit2_test ?rand t wraps t into a OUnit2 test

val to_ounit2_test_list : ?⁠rand:Random.State.t ‑> QCheck.Test.t list ‑> OUnit2.test list

to_ounit2_test_list ?rand t like to_ounit2_test but for a list of tests

OUnit runners

QCheck provides some custom runners for OUnit tests.

Note that OUnit.run_test_tt or OUnit.run_test_tt_main can be used as well, in particular when QCheck tests are mixed with normal unit tests.

For OUnit2 you can use OUnit2.run_test_tt_main.

val run : ?⁠argv:string array ‑> OUnit.test ‑> int

run test runs the test, and returns an error code that is 0 if all tests passed, 1 otherwise. This is the default runner used by the comment-to-test generator.

val run_tap : OUnit.test ‑> OUnit.test_results

TAP-compatible test runner, in case we want to use a test harness. It prints one line per test.