package ounit2

  1. Overview
  2. Docs
OUnit testing framework

Install

Dune Dependency

Authors

Maintainers

Sources

ounit-v2.2.4.tbz
sha256=b5c069a5d957220ca0669e945f1e81e6b6db9622766d860913e136e1168e3345
sha512=d69dc501a360c31f7854322b5e2c2abcb1e43890737e1cc00c167ee104d5dee471b6b8d8186f8044b0482c91a8f15210a25d833a1e03ed7baabfba923815962f

Description

OUnit is a unit test framework for OCaml. It allows one to easily create unit-tests for OCaml code. It is loosely based on [HUnit], a unit testing framework for Haskell. It is similar to [JUnit], and other XUnit testing frameworks.

Published: 22 Dec 2020

README

OUnit - xUnit testing framework for OCaml

Travis status AppVeyor status

OUnit is a unit test framework for OCaml. It allows one to easily create unit-tests for OCaml code. It is loosely based on HUnit, a unit testing framework for Haskell. It is similar to JUnit, and other XUnit testing frameworks.

Features:

  • colored output
  • JUnit report generation
  • HTML report generation

Installation

The recommended way to install ounit is via the opam package manager:

$ opam install ounit2

Documentation

API documentation is available online.

Examples

Transition to ounit2

In the past OUnit used the ocamlfind package name "oUnit". It is uncommon to use uppercase letters in ocamlfind package name. It caused some problems during the transition to "dune". It was also not the same name as the OPAM package. As of version 2.2, the opam package ounit and the ocamlfind package oUnit are renamed to ounit2 (the same for both the ocamlfind and opam packages).

To do the transition for your own tests:

  • in OPAM, the library should now depends on "ounit2" or "ounit2-lwt"
  • in dune files/OASIS/Makefile/pkg.ml replace "oUnit" by "ounit2" and "ounit-lwt" to "ounit2-lwt".

We will keep OPAM packages "ounit"/"ounit-lwt" for the transition.

Dependencies (5)

  1. stdlib-shims
  2. base-unix
  3. base-bytes
  4. dune >= "1.11.0"
  5. ocaml >= "4.04.0" & < "5.0"

Dev Dependencies

None

  1. 0install >= "2.17"
  2. 0install-gtk >= "2.17"
  3. 0install-solver
  4. abella >= "2.0.8"
  5. adelfa
  6. arg-complete
  7. binsec
  8. bisect_ppx >= "2.0.0" & < "2.6.0"
  9. bitgenerators
  10. caldav >= "0.2.3"
  11. camlp5 = "8.00~alpha06" | >= "8.02.01"
  12. capnp >= "3.6.0"
  13. charset
  14. cll
  15. clp_operations
  16. cobs
  17. cohttp-async >= "6.0.0"
  18. cohttp-curl-async >= "6.1.0"
  19. cohttp-curl-lwt
  20. cohttp-lwt-unix >= "6.0.0"
  21. colibri2
  22. conjury >= "2.0.1"
  23. containers = "3.8"
  24. coq-core < "8.19.0"
  25. crc >= "2.2.0"
  26. ctypes >= "0.21.1"
  27. ctypes-foreign >= "0.21.1"
  28. cudf >= "0.10"
  29. debian-formats >= "0.1.2"
  30. decoders-bencode >= "1.0.0"
  31. decoders-cbor >= "1.0.0"
  32. decoders-ezjsonm >= "1.0.0"
  33. decoders-jsonaf
  34. decoders-jsonm >= "1.0.0"
  35. decoders-msgpck >= "1.0.0"
  36. decoders-sexplib >= "1.0.0"
  37. decoders-yojson >= "1.0.0"
  38. devkit >= "1.20210120"
  39. dkml-c-probe >= "3.0.0"
  40. dtoa >= "0.3.3"
  41. dual
  42. edn >= "0.2.0"
  43. epictetus
  44. errpy
  45. expect >= "0.1.0"
  46. extunix >= "0.3.1"
  47. fileutils >= "0.6.4"
  48. gapi-ocaml
  49. gen >= "1.0"
  50. giflib
  51. goblint
  52. google-drive-ocamlfuse
  53. inotify >= "2.4"
  54. inotify-eio
  55. iostream
  56. iostream-camlzip
  57. ipaddr >= "5.6.0"
  58. ipaddr-sexp
  59. iter >= "1.6"
  60. jsonschema2atd
  61. junit_ounit >= "2.1.0"
  62. jupyter >= "2.7.6"
  63. kind2
  64. lambdasoup >= "0.7.2"
  65. letsencrypt >= "1.0.0"
  66. leveldb >= "1.3.0"
  67. lz4 >= "1.2.0"
  68. macaddr >= "5.6.0"
  69. macaddr-sexp
  70. markdown
  71. markup >= "1.0.0-1"
  72. mirage-block-ccm
  73. mirage-block-unix >= "2.14.2"
  74. mirage-bootvar
  75. mirage-crypto >= "0.10.7"
  76. mirage-crypto-ec >= "1.1.0"
  77. mirage-crypto-pk
  78. mirage-crypto-rng >= "0.10.7"
  79. mlbdd >= "0.7.2"
  80. mock-ounit >= "1.0.0"
  81. mustache = "3.2.0"
  82. mustache-cli
  83. mutaml
  84. mysql_protocol
  85. ocolor >= "1.3.1"
  86. orsetto >= "1.0.3"
  87. otoml >= "0.9.2"
  88. ounit = "2.2.4"
  89. ounit2-lwt = "2.2.4"
  90. packstream
  91. parsite
  92. pcre >= "8.0.3"
  93. pcre2 >= "7.5.2"
  94. plato
  95. posix-getopt >= "2.0.0"
  96. ppx_const >= "2.0"
  97. ppx_deriving >= "5.2"
  98. ppx_deriving_protobuf >= "3.0.0"
  99. ppx_deriving_yojson >= "3.7.0"
  100. ppx_getenv >= "2.0"
  101. ppx_make
  102. ppx_pyformat
  103. ppx_viewpattern
  104. qcheck-ounit >= "0.17"
  105. qmp >= "0.19.0"
  106. qtest >= "2.11.1"
  107. re >= "1.12.0"
  108. redis >= "0.7"
  109. redis-lwt >= "0.5"
  110. redis-sync >= "0.5"
  111. rocq-prover
  112. rtree
  113. sd_logic
  114. sha >= "1.15.1"
  115. shared-block-ring
  116. sifun
  117. smtml
  118. starpath
  119. tiny_httpd >= "0.8" & < "0.13"
  120. tls >= "0.14.1"
  121. toml >= "7.0.0"
  122. toml_cconv >= "7.0.0"
  123. tuntap
  124. uri >= "4.4.0"
  125. uri-re >= "4.4.0"
  126. uri-sexp >= "4.4.0"
  127. vchan >= "6.0.2"
  128. vec >= "0.2.0"
  129. vhd-format-lwt = "0.12.3"
  130. vlq >= "0.2.1"
  131. xdg-basedir >= "0.0.5"
  132. xenstore
  133. zarr
  134. zarr-eio
  135. zarr-lwt
  136. zarr-sync
  137. zmq >= "5.1.1"
  138. zmq-async >= "5.1.1"
  139. zmq-eio
  140. zmq-lwt >= "5.1.1"

Conflicts

None

OCaml

Innovation. Community. Security.