package ounit2

  1. Overview
  2. Docs
OUnit testing framework

Install

Dune Dependency

Authors

Maintainers

Sources

ounit-2.2.5.tbz
sha256=1b0d182b5eae536f37605f379b8e42a35d587471b917cee3d033bea20f7cbe55
sha512=2e519ff032843298b4dd716d7b3460d4720fe59ba1535a32fc9ef58eae4fcc80d3ec59ddb7b22653f064ef8ae02d19ae1afd2ed7de16c34d396ea180a6e33cb1

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: 27 Jan 2022

README

OUnit - xUnit testing framework for OCaml

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. arg-complete
  6. binsec >= "0.4.0"
  7. bisect_ppx >= "2.0.0" & < "2.6.0"
  8. bitgenerators
  9. camlp5 >= "8.00~alpha04" & < "8.00" | >= "8.00.05"
  10. camlrack
  11. capnp >= "3.6.0"
  12. charset
  13. cll
  14. clp_operations
  15. cobs
  16. colibri2
  17. conjury >= "2.0.1"
  18. containers = "3.8"
  19. coq-core < "8.19.0"
  20. ctypes >= "0.21.1"
  21. ctypes-foreign >= "0.21.1"
  22. cudf >= "0.10"
  23. deadlock
  24. debian-formats >= "0.1.2"
  25. decoders-bencode >= "1.0.0"
  26. decoders-cbor >= "1.0.0"
  27. decoders-ezjsonm >= "1.0.0"
  28. decoders-jsonaf
  29. decoders-jsonm >= "1.0.0"
  30. decoders-msgpck >= "1.0.0"
  31. decoders-sexplib >= "1.0.0"
  32. decoders-yojson >= "1.0.0"
  33. devkit >= "1.20210120"
  34. dkml-c-probe >= "3.0.0"
  35. dtoa >= "0.3.3"
  36. dual
  37. edn >= "0.2.0"
  38. epictetus
  39. errpy
  40. extunix >= "0.3.1"
  41. fileutils >= "0.6.4"
  42. gapi-ocaml >= "0.4.3"
  43. gen >= "1.0"
  44. goblint >= "1.1.1"
  45. google-drive-ocamlfuse >= "0.7.29"
  46. inotify >= "2.4"
  47. iostream
  48. iostream-camlzip
  49. ipaddr >= "5.3.1"
  50. ipaddr-sexp >= "5.3.1"
  51. iter >= "1.6"
  52. jsonschema2atd
  53. jupyter >= "2.7.6"
  54. kind2
  55. lambdasoup >= "0.7.2"
  56. leveldb >= "1.3.0"
  57. lz4 >= "1.2.0"
  58. macaddr >= "5.3.1"
  59. macaddr-sexp >= "5.3.1"
  60. markdown
  61. markup >= "1.0.0"
  62. mirage-block-ccm >= "1.1.0"
  63. mirage-block-unix >= "2.13.0"
  64. mirage-bootvar
  65. mirage-crypto >= "0.10.6"
  66. mirage-crypto-pk >= "0.10.6"
  67. mirage-crypto-rng >= "0.10.6"
  68. mlbdd >= "0.7.2"
  69. mock-ounit >= "1.0.0"
  70. mustache = "3.2.0"
  71. mustache-cli
  72. mutaml
  73. mysql_protocol >= "3.0.1"
  74. ocolor >= "1.3.1"
  75. orsetto >= "1.0.3"
  76. otoml >= "0.9.2"
  77. ounit = "2.2.5"
  78. ounit2-lwt = "2.2.5"
  79. oxylc
  80. pa_ppx < "0.07"
  81. packstream
  82. pcre2 >= "7.5.2"
  83. plato
  84. posix-getopt >= "2.0.0"
  85. ppx_camlrack
  86. ppx_const >= "2.0"
  87. ppx_deriving >= "5.2"
  88. ppx_deriving_protobuf >= "3.0.0"
  89. ppx_deriving_yojson >= "3.7.0"
  90. ppx_getenv >= "2.0"
  91. ppx_make
  92. ppx_pyformat
  93. ppx_viewpattern
  94. qcheck-ounit >= "0.14"
  95. qmp >= "0.19.0"
  96. qtest >= "2.11.1"
  97. redis >= "0.7"
  98. redis-lwt >= "0.5"
  99. redis-sync >= "0.5"
  100. rtree
  101. sd_logic
  102. sha >= "1.15.1"
  103. shared-block-ring >= "3.0.0"
  104. sifun
  105. starpath
  106. tar-mirage >= "2.0.0" & < "2.4.0"
  107. tiny_httpd >= "0.8" & < "0.13"
  108. tls >= "0.13.0"
  109. toml >= "7.0.0"
  110. toml_cconv >= "7.0.0"
  111. tuntap >= "2.0.1"
  112. uri >= "4.4.0"
  113. uri-re >= "4.4.0"
  114. uri-sexp >= "4.4.0"
  115. vchan >= "6.0.2"
  116. vec >= "0.2.0"
  117. vhd-format-lwt >= "0.12.3"
  118. vlq >= "0.2.1"
  119. xenstore >= "2.2.0"
  120. zmq >= "5.1.1"
  121. zmq-async >= "5.1.1"
  122. zmq-eio
  123. zmq-lwt >= "5.1.1"

Conflicts

None

OCaml

Innovation. Community. Security.