package ppx_windtrap

  1. Overview
  2. Docs
PPX and instrumentation backend for windtrap

Install

dune-project
 Dependency

Authors

Maintainers

Sources

windtrap-0.1.0.tbz
sha256=2241b294b24ed5d56ea8b834d296e6fabc5dbdd924a89f51c14b00da66c50a25
sha512=c6cf83028bb09d0f2afeb38fce6825620873a6bbeff4b5b77e928bc2fc69262d49fe341961cba2b451c9dc9bd0df414f06bb73020c7131b125c6abd85c6bc5dd

doc/CHANGES.html

Changelog

All notable changes to this project will be documented in this file.

  • Only document user-facing changes (features, bug fixes, performance improvements, API changes, etc.)
  • Add new entries at the top of the appropriate section (most recent first)

[0.1.0] - 2026-02-13

Windtrap is an all-in-one OCaml testing framework that unifies unit tests, property-based tests, snapshot tests, and expect tests under a single API. Instead of juggling multiple testing libraries, Windtrap gives you one cohesive package with a PPX for inline expect tests (ppx_windtrap).

  • Unit tests with combinators, tags, skip, brackets, and timeouts.
  • Property-based testing with configurable seeds and shrinking.
  • Snapshot testing with automatic file management and diffing.
  • Inline expect tests via ppx_windtrap with automatic correction.
  • CLI test runner with filtering, verbosity, and color support.
  • Test coverage reporting with bisect_ppx integration.

Acknowledgments

Windtrap builds on ideas and code from several OCaml projects:

  • Alcotest by Thomas Gazagnaire — test structure and runner design
  • Craig Ferguson's Alcotest PRs (#294, #247) — API design, subcomponent diffing, and Levenshtein distance (ISC)
  • QCheck2 by Simon Cruanes et al. — generator design and integrated shrinking (BSD 2-Clause)
  • ppx_expect and ppx_inline_test by Jane Street — expect test paradigm and dune integration
  • Bisect_ppx by Anton Bachin et al. — coverage instrumentation and runtime (MIT)