package ounit2

  1. Overview
  2. Docs
OUnit testing framework

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ounit-v2.2.3.tbz
sha256=e280a64aa7df64bd7335c9ed68a70d6ee168b39ae8bbfb6daedd2f4a04844ad9
sha512=dff04859d263e5f80a1606156d07493d0320a2756d0a7f134c63c53078550c7b056587486922bc66a288413af30c59a7e47157636502c6dd10626cf75587f981

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: 12 Jul 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. claudius
  15. cll
  16. clp_operations
  17. cobs
  18. cohttp-async >= "6.0.0"
  19. cohttp-curl-async >= "6.1.0"
  20. cohttp-curl-lwt
  21. cohttp-lwt-unix >= "6.0.0"
  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. fuse3
  49. gapi-ocaml
  50. gen >= "1.0"
  51. giflib
  52. goblint
  53. google-drive-ocamlfuse
  54. inotify >= "2.4"
  55. inotify-eio
  56. iostream
  57. iostream-camlzip
  58. ipaddr >= "5.6.0"
  59. ipaddr-sexp
  60. irky
  61. iter >= "1.6"
  62. jsonschema2atd
  63. junit_ounit >= "2.1.0"
  64. jupyter >= "2.7.6"
  65. jws
  66. kind2
  67. lambdasoup >= "0.7.2"
  68. letsencrypt >= "1.0.0"
  69. leveldb
  70. luna
  71. lz4 >= "1.2.0"
  72. macaddr >= "5.6.0"
  73. macaddr-sexp
  74. markdown
  75. markdown_monolith
  76. markup >= "1.0.0-1"
  77. mirage-block-ccm
  78. mirage-block-unix >= "2.14.2"
  79. mirage-bootvar
  80. mirage-crypto >= "0.10.7"
  81. mirage-crypto-ec >= "1.1.0"
  82. mirage-crypto-pk
  83. mirage-crypto-rng >= "0.10.7"
  84. mlbdd >= "0.7.2"
  85. mock-ounit >= "1.0.0"
  86. mustache = "3.2.0"
  87. mustache-cli
  88. mutaml
  89. mysql_protocol
  90. ocaml-yescrypt
  91. ocamlmod >= "0.1.1"
  92. ocolor >= "1.3.1"
  93. orsetto >= "1.0.3"
  94. otoml >= "0.9.2"
  95. otp
  96. ounit = "2.2.3"
  97. ounit2-lwt = "2.2.3"
  98. packstream
  99. parsite
  100. pcrc
  101. pcre >= "8.0.3"
  102. pcre2 >= "7.5.2"
  103. plato
  104. posix-getopt >= "2.0.0"
  105. ppx_const
  106. ppx_deriving >= "5.2"
  107. ppx_deriving_protobuf
  108. ppx_deriving_yojson >= "3.7.0"
  109. ppx_getenv
  110. ppx_make
  111. ppx_mikmatch
  112. ppx_pyformat
  113. ppx_viewpattern
  114. qcheck-ounit >= "0.17"
  115. qmp >= "0.19.0"
  116. qtest >= "2.11.1"
  117. re >= "1.12.0"
  118. redis >= "0.7"
  119. redis-lwt >= "0.5"
  120. redis-sync >= "0.5"
  121. rtree
  122. sha >= "1.15.1"
  123. shared-block-ring
  124. shellwords
  125. sifun
  126. smtml >= "0.7.0"
  127. starpath
  128. tiny_httpd >= "0.8" & < "0.13"
  129. tls >= "0.14.1"
  130. toml >= "7.0.0"
  131. toml_cconv >= "7.0.0"
  132. tuntap
  133. uri >= "4.4.0"
  134. uri-re >= "4.4.0"
  135. uri-sexp >= "4.4.0"
  136. vchan >= "6.0.2"
  137. vec >= "0.2.0"
  138. vhd-format-lwt = "0.12.3"
  139. vlq >= "0.2.1"
  140. xdg-basedir >= "0.0.5"
  141. xenstore
  142. xenstore_transport >= "1.5.0"
  143. zarr
  144. zarr-eio
  145. zarr-lwt
  146. zarr-sync
  147. zmq >= "5.1.1"
  148. zmq-async >= "5.1.1"
  149. zmq-eio
  150. zmq-lwt >= "5.1.1"

Conflicts

None