package testo-lwt

  1. Overview
  2. Docs
Test framework for OCaml, Lwt variant

Install

dune-project
 Dependency

Authors

Maintainers

Sources

testo-0.3.4.tbz
sha256=50c4ad248a3234274c84f80b56d2c4007238c65cfd1e0a66b1952deaf04a4765
sha512=522c856350ea1cc3ca17cde59cbd50440ff36681952f672cfa0ba4451db41343a6de3ca0101f7d4465d30de3f337f226df289bbc21780f8a18a6d9a622e3fb55

doc/CHANGES.html

0.3.4 (2026-01-17)

  • Add support for checked output files (#134).
  • Add an option inline_logs to create a test for which logs are always or never shown inline (#142).
  • Add a command-line option --max-inline-log-bytes to limit the size of unchecked test output (logs) shown inline when reporting the status of a test. The default limit is 1MB (#144).
  • Improve internal error handling (#153, #154).
  • Add support for boolean selection queries on test tags, extending -t (#5). The query language keywords and, or, not, all, and none can no longer be used as tag names.
  • New experimental submodule [Testo.Lazy_with_output] module for lazy computations that cache standard output and error output in addition to the computation’s result or exception. This allows for sharing context between tests running in the same worker process. It saves unnecessary computations while providing the same logs for each test sharing this context (#156).
  • Report and highlight differences in Unix vs. Windows line endings as well as missing trailing newlines (#163).
  • Testo’s snapshot files are now open in text mode for Windows-Unix compatibility. When reading files on Windows, CRLFs are converted to LFs. When writing, LFs are converted to CRLFs. Git or equivalent must be set up to convert line endings appropriately when moving files across platforms (#165).
  • A series of functions for reading and writing files has been deprecated and renamed to hint that we’re reading or writing in text mode on Windows. These functions are write_file, read_file, map_file, copy_file, and with_temp_file. The new names are write_text_file, read_text_file, etc. (#165).
  • Testo’s own test suite now passes successfully on Windows.
  • Add a -C/--chdir option to set the current working directory (#167).
  • Add support for a Testo.check function and testables, replicating the similar functionality found in Alcotest. This makes it practical to write tests that don’t depend on the Alcotest library (#169).
  • Show current working directory (cwd) when reporting missing files if one of the paths is relative (#170).
  • Rename the broken option of Testo.create and Testo.update to flaky (#172).

0.2.0 (2025-09-11)

  • Fix: handle windows paths correctly CLI help output (https://github.com/semgrep/testo/pull/121)
  • Fix: correct path masking on Windows paths (https://github.com/semgrep/testo/pull/121)
  • Fix: prevent “Bad file descriptor” errors arising from output redirection on Windows (https://github.com/semgrep/testo/pull/121)
  • Fix: handle temporary file deletion cleanly on windows (https://github.com/semgrep/testo/pull/119)
  • Fix: don’t set signals on Windows (https://github.com/semgrep/testo/pull/118).
  • Add Testo.with_chdir (https://github.com/semgrep/testo/pull/104).
  • Fix nonsensical diff formatting (https://github.com/semgrep/testo/pull/104).
  • Fix: enable the approval of the output of a test that is expected to complete but produces the incorrect output. Running the approve subcommand on such a test now successfully changes its status from XFAIL to XPASS (#103).
  • Allow multiple -s search queries in the same test command, allowing the selection of various tests by their name or hash (#110).
  • Add a --expert option to hide the legend printed by run and status (#109).
  • Add a --autoclean option to run and status subcommands to delete test snapshots that don’t belong to any known test as it typically happens after tests are renamed (#126).
  • Add support for timeouts (#127).

0.1.0 (2024-11-10)

First official release