PackageTrack
Sign in Get early access

libtest-mimic

Write your own test harness that looks and behaves like the built-in test harness used by `rustc --test`

0.8.2 29M downloads/mo #1698 most downloaded on crates.io LukasKalbertodt/libtest-mimic

What this package is like to depend on

Last release 5 months ago

16 Mar 2026

Release timing varies

gaps range from 3 weeks to 1.9 years

Nearly every release is documented

notes for 17 of 17 stable releases

Nothing withdrawn

no release was ever pulled

8 years old

17 releases · first in 2018

1 release in the last 12 months

see the full history below

Release timeline

17 releases · Jul 2018 to Mar 2026
2019 2020 2021 2022 2023 2024 2025 2026
Release Pre-release

Releases

latest 17
  1. 0.8.2 16 Mar 2026
    Release notes
    • Add Trial::ignorable_test to allow the runner decide at runtime whether a test should be skipped (thanks to @tgross35 in #58)
    • Add Arguments::{is_ignored, is_filtered_out} (thanks to @jstarks in #58)
    • Bump anstream to 1.0 (thanks @cwfitzgerald in #58)
    Open source →
    Release notes
    • Add Trial::ignorable_test to allow the runner decide at runtime whether a test should be skipped (thanks to @tgross35 in #58)
    • Add Arguments::{is_ignored, is_filtered_out} (thanks to @jstarks in #58)
    • Bump anstream to 1.0 (thanks @cwfitzgerald in #58)
    Open source →
  2. 0.8.1 05 Oct 2024
    Release notes
    • Fix bug when executing trials on fewer threads than trials (thanks @hanna-kruppe for catching this)
    Open source →
    Release notes
    • Fix bug when executing trial on fewer threads than trials (thanks @hanna-kruppe for catching this)
    Open source →
  3. 0.8.0 05 Oct 2024
    Release notes
    • Breaking: bump MSRV to 1.65
    • Remove threadpool dependency, getting rid of memory leaks observed when running under valgrind (thanks @Felix-El) in #46
    • Switch from termcolor to anstream to get rid of duplicate dependencies (thanks @hanna-kruppe) in #44
    • Bump dev-dependency fastrand to 2 (thanks @alexanderkjall) in #47
    • Fix outdated docs
    Open source →
    Release notes
    • Breaking: bump MSRV to 1.65
    • Remove threadpool dependency, getting rid of memory leaks observed when running under valgrind (thanks @Felix-El) in #46
    • Switch from termcolor to anstream to get rid of duplicate dependencies (thanks @hanna-kruppe) in #44
    • Bump dev-dependency fastrand to 2 (thanks @alexanderkjall) in #47
    • Fix outdated docs
    Open source →
  4. 0.7.3 10 May 2024
    Release notes
    • Default to single-threaded tests for WebAssembly (thanks @alexcrichton) in #41
    Open source →
    Release notes
    • Default to single-threaded tests for WebAssembly (thanks @alexcrichton) in #41
    Open source →
  5. 0.7.2 09 Apr 2024
    Release notes
    • Fix Conclusion::exit_code (logic was inverted in 0.7.1)
    Open source →
    Release notes
    • Fix Conclusion::exit_code (logic was inverted in 0.7.1)
    Open source →
  6. 0.7.1 09 Apr 2024
    Release notes
    • Add Conclusion::exit_code and note about destructors/cleanup to docs of exit and exit_if_failed e938e537e
    Open source →
    Release notes
    • Add Conclusion::exit_code and note about destructors/cleanup to docs of exit and exit_if_failed e938e537e
    Open source →
  7. 0.7.0 14 Jan 2024
    Release notes
    • Also check kind when filtering tests (thanks @sunshowers) in #30
      • This is potentially breaking as additional or fewer tests might be executed in some situations.
    • Add JSON format output (thanks @PaulWagener and @t-moe) in #35
    • Add no-op flags to add CLI compatibility for IntellJ Rust (thanks @Dinnerbone and @t-moe) #28 / 70cdc55
    Open source →
    Release notes
    • Also check kind when filtering tests (thanks @sunshowers) in #30
      • This is potentially breaking as additional or fewer tests might be executed in some situations.
    • Add JSON format output (thanks @PaulWagener and @t-moe) in #35
    • Add no-op flags to add CLI compatibility for IntellJ Rust (thanks @Dinnerbone and @t-moe) #28 / 70cdc55
    Open source →
  8. 0.6.1 20 Jun 2023
    Release notes

    Fixed

    • Actually spawn as many threads as specified by --test-threads (thanks @hgzimmerman) in #32.
    • Fix & improve docs
    • Fix badge in README

    Changed

    • Deemphasize MSRV by removing check and note from README in #24.
    Open source →
    Release notes

    Fixed

    • Actually spawn as many threads as specified by --test-threads (thanks @hgzimmerman) in #32.
    • Fix & improve docs
    • Fix badge in README

    Changed

    • Deemphasize MSRV by removing check and note from README in #24.
    Open source →
  9. 0.6.0 05 Nov 2022
    Release notes

    Changed

    • Breaking: Updated clap to version 4 (thanks @msrd0)
    • Breaking: Bump MSRV to 1.60 (due to the clap update)

    Removed

    • Breaking: Remove FromStr impls for args::{ColorSetting, FormatSetting} (use clap::ValueEnum instead).
    Open source →
    Release notes

    Changed

    • Breaking: Updated clap to version 4 (thanks @msrd0)
    • Breaking: Bump MSRV to 1.60 (due to the clap update)

    Removed

    • Breaking: Remove FromStr impls for args::{ColorSetting, FormatSetting} (use clap::ValueEnum instead).
    Open source →
  10. 0.5.2 14 Aug 2022
    Release notes

    Added

    Fixed

    • Link in documentation
    Open source →
    Release notes

    Added

    • Re-add --nocapture as a noop argument #18 (thanks @sunshowers)

    Fixed

    • Link in documentation
    Open source →
  11. 0.5.1 13 Aug 2022
    Release notes

    Added

    • Trial::{name, kind, has_ignored_flag, is_test, is_bench} getters
    Open source →
  12. 0.5.0 13 Aug 2022
    Release notes

    Most parts of this library have been rewritten and the API has changed a lot. You might be better of just reading the new docs instead of this change log. I do think the new API is better in many regards. Apart from an improved API, changes that motivated the rewrite are marked with ⭐.

    Changed

    • Breaking: bump MSRV to 1.58
    • Breaking: Rename Test to Trial
    • Breaking: Rename run_tests to run
    • Breaking: Make every Trial have a runner function instead of data + a global runner function. Thus, the third parameter of run is no more. I think this model is more intuitive.
    • Breaking: Add Trial::{test, bench} constructor functions, use builder pattern, and make fields private.
    • Breaking: rename Args::num_threads to test_threads
    • Breaking: make fields of Conclusion public and remove getter methods
    • Breaking: remove RunnerEvent. This should not have been public.
    • ⭐ Tests are now run in main thread when --test-threads=1 is specified
    • ⭐ Reduce number of indirect dependencies considerably
    • Fix rust-version field in Cargo.toml (thanks @hellow554)
    • Fix --ignored behavior
    • Fix some CLI error messages

    Added

    • ⭐Panics in test runners are caught and treated as failure
    • ⭐ Lots of integration tests (should make any future development of this library way easier)
    • Add must_use message for Conclusion
    • Print total execution time at the end of the run
    • Allow benchmarks to run in test mode
    • --include-ignored

    Removed

    • Breaking: remove unsupported CLI options. They were ignored anyway, but the CLI would accept them.
    Open source →
  13. 0.4.1 07 Jun 2022
    Release notes
    • Add rust = "1.56" to Cargo.toml, stating the existing MSRV.
    • Update crossbeam-channel to deduplicate some indirect dependencies.
    Open source →
  14. 0.4.0 13 May 2022
    Release notes
    • Breaking: Update to Rust 2021, bumping MSRV to 1.56
    • Fix --list --ignored behavior
    Open source →
  15. 0.3.0 28 Jun 2020
    Release notes

    Added

    • Add support for running tests in parallel #4
    • Add Arguments::from_iter #5
    Open source →
  16. 0.2.0 02 Oct 2019
    Release notes

    Changed

    • Upgrade dependencies #3
    • Flush stdout after printing test name 4a36b3318b69df233b0db7d1af3caf276e6bb070

    Fixed

    • Fix overflow bug when calculating number of passed tests 264fe6f8a986ab0c02f4a85e64e42ee17596923c
    Open source →
  17. 0.1.0 23 Jul 2018
    Release notes

    Added

    • Everything.
    Open source →

Every package, every release, already written down.

The archive is open and free. Watching your own project is what we are building next.

Browse the archive