package ounit2

  1. Overview
  2. Docs
OUnit testing framework

Install

dune-project
 Dependency

Authors

Maintainers

Sources

ounit-2.2.6.tbz
sha256=0690fb1e0e90a18eed5c3566b3cc1825d98b0e8c7d51bb6b846c95c45a615913
sha512=d7cb36a1fe245d02afab606cd1ee755a178ee4cb18fbbfec1df32baa88fa90ef6c9a50d9fd5bde46c7fd9c481f2debe4bafac75c4e3bdfbdb63fc18b0ccce3cc

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: 10 Feb 2022

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.

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. 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. gapi-ocaml
  52. gen >= "1.0"
  53. giflib
  54. goblint
  55. google-drive-ocamlfuse
  56. inotify >= "2.4"
  57. inotify-eio
  58. iostream
  59. iostream-camlzip
  60. ipaddr >= "5.6.0"
  61. ipaddr-sexp
  62. iter >= "1.6"
  63. jsonschema2atd
  64. junit_ounit >= "2.1.0"
  65. jupyter >= "2.7.6"
  66. kind2
  67. lambdasoup >= "0.7.2"
  68. letsencrypt >= "1.0.0"
  69. leveldb >= "1.3.0"
  70. lz4 >= "1.2.0"
  71. macaddr >= "5.6.0"
  72. macaddr-sexp
  73. markdown
  74. markdown_monolith
  75. markup >= "1.0.0-1"
  76. mirage-block-ccm
  77. mirage-block-unix >= "2.14.2"
  78. mirage-bootvar
  79. mirage-crypto >= "0.10.7"
  80. mirage-crypto-ec >= "1.1.0"
  81. mirage-crypto-pk
  82. mirage-crypto-rng >= "0.10.7"
  83. mlbdd >= "0.7.2"
  84. mock-ounit >= "1.0.0"
  85. mustache = "3.2.0"
  86. mustache-cli
  87. mutaml
  88. mysql_protocol
  89. ocaml-yescrypt
  90. ocamlmod >= "0.1.1"
  91. ocolor >= "1.3.1"
  92. orsetto >= "1.0.3"
  93. otoml >= "0.9.2"
  94. otp
  95. ounit = "2.2.6"
  96. ounit2-lwt = "2.2.6"
  97. packstream
  98. parsite
  99. pcrc
  100. pcre >= "8.0.3"
  101. pcre2 >= "7.5.2"
  102. plato
  103. posix-getopt >= "2.0.0"
  104. ppx_camlrack
  105. ppx_const >= "2.0"
  106. ppx_deriving >= "5.2"
  107. ppx_deriving_protobuf >= "3.0.0"
  108. ppx_deriving_yojson >= "3.7.0"
  109. ppx_getenv >= "2.0"
  110. ppx_make
  111. ppx_pyformat
  112. ppx_viewpattern
  113. qcheck-ounit >= "0.17"
  114. qmp >= "0.19.0"
  115. qtest >= "2.11.1"
  116. re >= "1.12.0"
  117. redis >= "0.7"
  118. redis-lwt >= "0.5"
  119. redis-sync >= "0.5"
  120. rtree
  121. sd_logic
  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