package ounit2

  1. Overview
  2. Docs
OUnit testing framework

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ounit-2.2.7.tbz
sha256=90f6e63bd1240a51d8b9b2f722059bd79ce00b5276bdd6238b8f5c613c0e7388
sha512=53463e5b1b5a40f424e19f5f6a86338a544079600d1fd121ffc1a6fcaa239630194018faf91ccf360ba40b1b2a8b01cf491935e014c68d2947f6e027a2f0a0f9

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: 24 Mar 2023

README

OUnit - xUnit testing framework for OCaml

GitHub Actions

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. seq
  3. base-unix
  4. ocaml >= "4.04.0"
  5. dune >= "3.0"

Dev Dependencies (1)

  1. odoc with-doc

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

Conflicts

None