package alcotest

  1. Overview
  2. No Docs
Alcotest is a lightweight and colourful test framework

Install

dune-project
 Dependency

Authors

Maintainers

Sources

alcotest-1.9.1.tbz
sha256=1e29c3b41d4329062105b723dfda3aff86b8cef5e7c7500d0e491fc5fd78e482
sha512=c49d402fa636dcf11f81917610dd1d2eca8606c8919aede4db23710d071f6046a8f93c78de9fbfee26637a53ca67f71fad500bfa2478b7f0f059608a492dd0a5

Description

Alcotest exposes simple interface to perform unit tests. It exposes a simple TESTABLE module type, a check function to assert test predicates and a run function to perform a list of unit -> unit test callbacks.

Alcotest provides a quiet and colorful output where only faulty runs are fully displayed at the end of the run (with the full logs ready to inspect), with a simple (yet expressive) query language to select the tests to run.

Published: 01 Oct 2025

Dependencies (9)

  1. ocaml-syntax-shims
  2. uutf >= "1.0.1"
  3. stdlib-shims
  4. re >= "1.7.2"
  5. cmdliner >= "1.2.0"
  6. astring
  7. fmt >= "0.8.7"
  8. ocaml >= "4.08"
  9. dune >= "3.0"

Dev Dependencies (1)

  1. odoc with-doc

  1. ahrocksdb
  2. albatross >= "1.5.4"
  3. alcobar
  4. alcotest-async >= "1.9.1"
  5. alcotest-js >= "1.9.1"
  6. alcotest-lwt >= "1.9.1"
  7. alcotest-mirage >= "1.9.1"
  8. alg_structs_qcheck
  9. algaeff
  10. ambient-context
  11. ambient-context-eio
  12. ambient-context-lwt
  13. angstrom >= "0.7.0"
  14. ansi >= "0.6.0"
  15. anycache >= "0.7.4"
  16. anycache-async
  17. anycache-lwt
  18. arc
  19. archetype >= "1.4.2"
  20. archi
  21. arp
  22. arrakis < "1.1.0"
  23. art
  24. asai
  25. asak >= "0.2"
  26. asli >= "0.2.0"
  27. asn1-combinators >= "0.2.5"
  28. atd >= "2.3.3"
  29. atdgen >= "2.10.0"
  30. atdpy
  31. atdts
  32. avro-simple
  33. backoff
  34. base32
  35. base64 >= "2.1.2" & < "3.2.0" | >= "3.4.0"
  36. bastet
  37. bastet_lwt
  38. bech32
  39. bechamel >= "0.5.0"
  40. bigarray-overlap
  41. bigstringaf
  42. biotk >= "0.4"
  43. bitlib
  44. blake2
  45. bloomf
  46. bls12-381 < "0.4.1" | >= "3.0.0" & < "18.0"
  47. bls12-381-hash
  48. bls12-381-js >= "0.4.2"
  49. bls12-381-js-gen >= "0.4.2"
  50. bls12-381-legacy
  51. bls12-381-signature
  52. bls12-381-unix
  53. blurhash
  54. brisk-reconciler
  55. builder-web
  56. bytebuffer
  57. ca-certs
  58. ca-certs-nss
  59. cachet
  60. cachet-lwt
  61. cachet-solo5
  62. cactus
  63. caldav
  64. calendar >= "3.0.0"
  65. calendars >= "2.0.0"
  66. callipyge
  67. camlix
  68. camlkit
  69. camlkit-base
  70. capnp-rpc
  71. capnp-rpc-unix
  72. caqti >= "1.7.0"
  73. caqti-async >= "1.7.0"
  74. caqti-driver-mariadb >= "1.7.0"
  75. caqti-driver-postgresql >= "1.7.0"
  76. caqti-driver-sqlite3 >= "1.7.0"
  77. caqti-dynload >= "2.0.1"
  78. caqti-eio
  79. caqti-lwt >= "1.7.0"
  80. caqti-miou
  81. carray
  82. carton < "1.0.0"
  83. carton-git
  84. carton-lwt >= "0.4.3" & < "1.0.0"
  85. catala >= "0.6.0"
  86. cborl
  87. cf-lwt
  88. chacha
  89. chamelon
  90. chamelon-unix
  91. charrua-client
  92. charrua-server
  93. checked_oint
  94. checkseum >= "0.0.3"
  95. cid
  96. clarity-lang
  97. class_group_vdf
  98. cohttp
  99. cohttp-curl-async
  100. cohttp-curl-lwt
  101. cohttp-eio >= "6.0.0~beta2"
  102. colombe >= "0.2.0"
  103. color
  104. commons
  105. conan
  106. conan-cli
  107. conan-database
  108. conan-lwt
  109. conan-unix
  110. conex < "0.10.0"
  111. conex-mirage-crypto
  112. conformist
  113. cookie
  114. corosync
  115. cow >= "2.2.0"
  116. crockford
  117. css
  118. css-parser
  119. cstruct
  120. cstruct-sexp
  121. ctypes-zarith
  122. cuid
  123. cure2
  124. curly
  125. current
  126. current-albatross-deployer
  127. current_git >= "0.7.1"
  128. current_incr
  129. current_rpc >= "0.7.4"
  130. data-encoding
  131. dates_calc
  132. dbase4
  133. decimal >= "0.3.0"
  134. decompress
  135. depyt
  136. digestif >= "0.9.0"
  137. dispatch >= "0.4.1"
  138. dkim
  139. dkim-bin
  140. dkim-mirage
  141. dkml-dune-dsl-show
  142. dkml-install
  143. dkml-install-installer
  144. dkml-install-runner
  145. dmarc
  146. dns >= "4.4.1"
  147. dns-cli
  148. dns-client >= "4.6.3"
  149. dns-forward-lwt-unix
  150. dns-resolver
  151. dns-server
  152. dns-tsig
  153. dnssd
  154. dnssec
  155. dockerfile >= "8.2.7"
  156. dockerfile-opam >= "8.3.4"
  157. domain-local-await >= "0.2.1"
  158. domain-local-timeout
  159. domain-name
  160. dream
  161. dream-htmx
  162. dream-pure
  163. dscheck >= "0.1.1"
  164. duff
  165. dune-deps >= "1.4.0"
  166. dune-release >= "1.0.0"
  167. duration
  168. echo
  169. eio < "0.12"
  170. eio_linux
  171. eio_windows
  172. emile
  173. encore
  174. eqaf >= "0.5"
  175. equinoxe
  176. equinoxe-cohttp
  177. equinoxe-hlc
  178. ezgzip
  179. ezjsonm
  180. ezjsonm-lwt
  181. FPauth
  182. FPauth-core
  183. FPauth-responses
  184. FPauth-strategies
  185. faraday != "0.2.0"
  186. farfadet
  187. fat-filesystem
  188. fehu < "1.0.0~alpha3"
  189. ff
  190. ff-pbt
  191. flex-array
  192. flux
  193. fluxt
  194. forester >= "5.0"
  195. fsevents-lwt
  196. functoria
  197. fungi
  198. geojson
  199. geoml >= "0.1.1"
  200. git
  201. git-cohttp
  202. git-cohttp-unix
  203. git-kv != "0.1.3"
  204. git-mirage
  205. git-net
  206. git-split
  207. git-unix
  208. gitlab-unix
  209. glicko2
  210. gmap
  211. gobba
  212. gpt
  213. graphql
  214. graphql-async
  215. graphql-cohttp >= "0.13.0"
  216. graphql-lwt
  217. graphql_parser != "0.11.0"
  218. graphql_ppx
  219. h1
  220. h1_parser
  221. h2
  222. hacl
  223. hacl-star >= "0.6.0"
  224. hacl_func
  225. hacl_x25519
  226. handlebars-ml >= "0.2.1"
  227. highlexer
  228. hkdf
  229. hockmd
  230. html_of_jsx
  231. http
  232. http-multipart-formdata < "2.0.0"
  233. httpaf >= "0.2.0"
  234. httpcats
  235. httpun
  236. httpun-ws
  237. hugin < "1.0.0~alpha3"
  238. huml
  239. hvsock
  240. icalendar
  241. imagelib
  242. index
  243. inferno >= "20220603"
  244. influxdb-async
  245. influxdb-lwt
  246. inquire < "0.2.0"
  247. intel_hex >= "0.3"
  248. interval-map
  249. iomux
  250. irmin
  251. irmin-bench
  252. irmin-chunk
  253. irmin-cli
  254. irmin-containers
  255. irmin-fs
  256. irmin-git
  257. irmin-graphql
  258. irmin-pack
  259. irmin-pack-tools
  260. irmin-test != "3.6.1"
  261. irmin-tezos
  262. irmin-unix
  263. irmin-watcher
  264. jekyll-format
  265. jose
  266. json-data-encoding >= "0.9"
  267. json-data-encoding-bson >= "1.1.1"
  268. json_decoder
  269. jsonfeed
  270. jsonxt
  271. junit_alcotest >= "2.2.0"
  272. jwto
  273. kaun < "1.0.0~alpha3"
  274. kcas >= "0.6.0"
  275. kcas_data >= "0.6.0"
  276. kdf
  277. ke >= "0.2"
  278. kkmarkdown
  279. kmt
  280. lambda-runtime
  281. lambda_streams
  282. lambda_streams_async
  283. lambdapi
  284. layoutz
  285. letters
  286. liquid_ml >= "0.1.3"
  287. lmdb >= "1.0"
  288. lockfree >= "0.3.1"
  289. logical
  290. logtk >= "1.6"
  291. lp
  292. lp-glpk
  293. lp-glpk-js < "0.5.0"
  294. lp-gurobi < "0.5.0"
  295. lru
  296. lt-code
  297. luv
  298. mazeppa
  299. mbr-format
  300. mdx >= "1.6.0"
  301. mec
  302. mechaml >= "1.2.1"
  303. mel-bastet
  304. merlin = "4.17.1-501"
  305. merlin-lib >= "4.17.1-501"
  306. metrics
  307. middleware
  308. mimic
  309. minicaml = "0.3.1" | >= "0.4"
  310. mirage >= "4.0.0"
  311. mirage-block-partition
  312. mirage-block-ramdisk
  313. mirage-channel >= "4.0.1"
  314. mirage-crypto-ec
  315. mirage-flow-unix
  316. mirage-kv >= "2.0.0"
  317. mirage-kv-mem >= "4.0.1"
  318. mirage-kv-unix >= "3.0.0"
  319. mirage-logs
  320. mirage-nat
  321. mirage-net-unix
  322. mirage-runtime < "4.7.0"
  323. mirage-tc
  324. mjson
  325. mlgpx
  326. mmdb < "0.3.0"
  327. mnd
  328. mqtt
  329. mrmime >= "0.2.0"
  330. msgpck >= "1.6"
  331. mssql >= "2.0.3"
  332. multibase
  333. multicore-magic
  334. multihash
  335. multihash-digestif
  336. multipart-form-data
  337. multipart_form
  338. multipart_form-eio
  339. multipart_form-lwt
  340. multipart_form-miou
  341. named-pipe
  342. nanoid
  343. nbd >= "4.0.3"
  344. nbd-tool
  345. neo4j_bolt
  346. nloge
  347. nocoiner
  348. non_empty_list
  349. nx < "1.0.0~alpha3"
  350. nx-datasets
  351. nx-text
  352. OCADml >= "0.6.0"
  353. obatcher
  354. ocaml-index < "5.4.1-503"
  355. ocaml-r >= "0.4.0"
  356. ocaml-version >= "3.5.0"
  357. ocamlformat >= "0.13.0" & < "0.25.1"
  358. ocamlformat-lib
  359. ocamlformat-mlx-lib
  360. ocamlformat-rpc < "removed"
  361. ocamline
  362. ocluster
  363. ocue
  364. odoc < "2.1.1"
  365. oenv >= "0.1.0"
  366. ohex
  367. oidc
  368. oktree >= "0.2.4"
  369. opam-0install
  370. opam-0install-cudf >= "0.5.0"
  371. opam-compiler
  372. opam-file-format >= "2.1.1"
  373. opam-repomin
  374. opencage
  375. opentelemetry >= "0.6"
  376. opentelemetry-client
  377. opentelemetry-client-cohttp-eio
  378. opentelemetry-client-cohttp-lwt >= "0.6"
  379. opentelemetry-client-ocurl >= "0.6"
  380. opentelemetry-client-ocurl-lwt
  381. opentelemetry-cohttp-lwt >= "0.6"
  382. opentelemetry-logs
  383. opentelemetry-lwt >= "0.6"
  384. opium
  385. opium-graphql
  386. opium-testing
  387. opium_kernel
  388. orewa
  389. orgeat
  390. ortac-core
  391. ortac-wrapper
  392. osnap < "0.3.0"
  393. osx-acl
  394. osx-attr
  395. osx-cf
  396. osx-fsevents
  397. osx-membership
  398. osx-mount
  399. osx-xattr
  400. otoggl
  401. owl >= "0.7.0" & != "0.9.0" & != "1.0.0"
  402. owl-base < "0.5.0"
  403. owl-ode >= "0.1.0" & != "0.2.0"
  404. owl-symbolic
  405. par_incr
  406. parseff
  407. passe
  408. passmaker
  409. patch
  410. pbkdf
  411. pecu >= "0.2"
  412. pf-qubes
  413. pg_query >= "0.9.6"
  414. pgx >= "1.0"
  415. pgx_unix >= "1.0"
  416. pgx_value_core
  417. pgx_value_ptime
  418. phylogenetics
  419. piaf
  420. picos < "0.5.0"
  421. picos_meta
  422. piece_rope
  423. plebeia >= "2.0.0"
  424. polyglot
  425. polymarket
  426. polynomial
  427. ppx_blob >= "0.3.0"
  428. ppx_catch
  429. ppx_deriving_cmdliner
  430. ppx_deriving_ezjsonm
  431. ppx_deriving_qcheck
  432. ppx_deriving_rpc
  433. ppx_deriving_yaml
  434. ppx_inline_alcotest
  435. ppx_map
  436. ppx_marshal
  437. ppx_mica
  438. ppx_parser
  439. ppx_protocol_conv >= "5.0.0"
  440. ppx_protocol_conv_json >= "5.0.0"
  441. ppx_protocol_conv_jsonm >= "5.0.0"
  442. ppx_protocol_conv_msgpack >= "5.0.0"
  443. ppx_protocol_conv_xml_light >= "5.0.0"
  444. ppx_protocol_conv_xmlm
  445. ppx_protocol_conv_yaml >= "5.0.0"
  446. ppx_repr
  447. ppx_subliner
  448. ppx_units
  449. ppx_yojson >= "1.1.0"
  450. pratter
  451. prbnmcn-ucb1 >= "0.0.2"
  452. prc
  453. preface
  454. pretty_expressive
  455. prettym
  456. proc-smaps
  457. producer
  458. progress
  459. prom
  460. prometheus < "1.2"
  461. prometheus-app
  462. protocell
  463. protocol-9p < "0.11.0" | >= "0.11.2"
  464. protocol-9p-unix
  465. proton
  466. psq
  467. public-suffix
  468. purl
  469. pxshot
  470. pyast
  471. qcaml
  472. qcheck >= "0.25"
  473. qcheck-alcotest
  474. qcheck-core >= "0.25"
  475. qcow-stream >= "0.13.0"
  476. qcow-tool >= "0.13.0"
  477. qcow-types >= "0.13.0"
  478. qdrant
  479. query-json
  480. quickjs
  481. quill < "1.0.0~alpha3"
  482. randii
  483. reason-standard
  484. red-black-tree
  485. reparse >= "2.0.0" & < "3.0.0"
  486. reparse-unix < "2.1.0"
  487. resp
  488. resp-unix >= "0.10.0"
  489. resto >= "0.9"
  490. rfc1951 < "1.0.0"
  491. routes < "2.0.0"
  492. rpc
  493. rpclib
  494. rpclib-async
  495. rpclib-lwt
  496. rpmfile < "0.3.0"
  497. rpmfile-eio
  498. rpmfile-unix
  499. rune < "1.0.0~alpha3"
  500. runtime_events_tools >= "0.5.2"
  501. SZXX >= "4.0.0"
  502. saga
  503. salsa20
  504. salsa20-core
  505. sanddb >= "0.2"
  506. saturn != "0.4.1"
  507. saturn_lockfree != "0.4.1"
  508. scrypt-kdf
  509. secp256k1 >= "0.4.1"
  510. secp256k1-internal
  511. semver >= "0.2.1"
  512. sendmail
  513. sendmail-lwt
  514. sendmail-miou-unix
  515. sendmail-mirage
  516. sendmsg
  517. seqes
  518. server-reason-react
  519. session-cookie
  520. session-cookie-async
  521. session-cookie-lwt
  522. shakuhachi
  523. sherlodoc
  524. sihl < "0.2.0"
  525. sihl-type
  526. slug
  527. smaws-clients
  528. smaws-lib
  529. smol
  530. smol-helpers
  531. sodium-fmt
  532. solidity-alcotest
  533. sowilo < "1.0.0~alpha3"
  534. spdx_licenses
  535. spectrum >= "0.2.0"
  536. spectrum_capabilities
  537. spectrum_palette_ppx
  538. spectrum_palettes
  539. spectrum_tools
  540. spin >= "0.7.0"
  541. spurs < "0.1.1"
  542. squirrel
  543. ssh-agent
  544. ssl >= "0.6.0"
  545. starred_ml
  546. stramon-lib
  547. stringx
  548. styled-ppx
  549. swapfs
  550. symex >= "0.2"
  551. synchronizer >= "0.2"
  552. syslog-rfc5424
  553. tabr
  554. talon < "1.0.0~alpha3"
  555. tar-mirage
  556. tcpip
  557. tdigest < "2.1.0"
  558. term-indexing
  559. term-tools
  560. terminal
  561. terminal_size >= "0.1.1"
  562. terminus
  563. terminus-cohttp
  564. terminus-hlc
  565. terml
  566. testo
  567. testo-lwt
  568. textmate-language >= "0.3.0"
  569. textrazor
  570. thread-table
  571. timedesc
  572. timere
  573. timmy
  574. timmy-jsoo
  575. timmy-lwt
  576. timmy-unix
  577. tls >= "0.12.8"
  578. toc
  579. topojson
  580. topojsone
  581. trail
  582. traits
  583. transept
  584. tsort >= "2.2.0"
  585. twostep
  586. type_eq
  587. type_id
  588. typeid >= "1.0.1"
  589. tyre >= "0.4"
  590. tyxml >= "4.2.0"
  591. tyxml-jsx
  592. tyxml-ppx >= "4.3.0"
  593. tyxml-syntax
  594. uecc
  595. ulid
  596. universal-portal
  597. unix-dirent
  598. unix-errno
  599. unix-sys-resource
  600. unix-sys-stat
  601. unix-time
  602. unstrctrd
  603. uring < "0.4"
  604. user-agent-parser
  605. uspf
  606. uspf-lwt
  607. uspf-mirage
  608. uspf-unix
  609. utcp
  610. utop >= "2.13.0"
  611. validate
  612. validator
  613. vercel
  614. vhd-format-lwt >= "0.13.0"
  615. wayland >= "2.0"
  616. wcwidth
  617. websocketaf
  618. x509 >= "0.7.0"
  619. xapi-rrd
  620. xapi-stdext-date
  621. xapi-stdext-encodings
  622. xapi-stdext-std >= "4.16.0"
  623. xdge
  624. xkbcommon
  625. yaml
  626. yaml-sexp
  627. yocaml
  628. yocaml_syndication >= "2.0.0"
  629. yocaml_yaml < "2.0.0"
  630. yojson >= "1.6.0"
  631. yojson-five
  632. yuscii >= "0.3.0"
  633. yuujinchou >= "1.0.0"
  634. zar
  635. zed >= "3.2.2"
  636. zlist < "0.4.0"

Conflicts (2)

  1. js_of_ocaml-compiler < "5.8"
  2. result < "1.5"