Repository navigation
Release v4.3.0
Summary
Adds an experimental native specification runner on Microsoft.Testing.Platform, plus two disposal fixes for the TUnit and xUnit v3 packages. The runner and its options may change without notice while it is experimental; see the README.
Added
- Experimental
Cratis.Specifications.Runnerthat runsEstablish/Because/should_specifications directly on Microsoft.Testing.Platform, without xUnit, NUnit or TUnit underneath. Specifications are registered at compile time by a source generator, so the test project can be published with Native AOT (part of #65) - The runner constructs each specification class once, runs
EstablishandBecauseonce and runs its facts against that instance. It acceptsGiven/Whenas aliases forEstablish/Becauseand shows names as readable sentences (Author › when registering › should be registered) (part of #65) - Runner options
--specs-parallel,--specs-sequential-facts,--fail-fast,--last-failed-first,--shardand--specs-cache(part of #65) - A benchmark harness and a manually dispatched Benchmarks workflow that compare the xUnit, xUnit v3, TUnit and native runner packages with their raw frameworks (#64)
Fixed
- xUnit v3 specifications are now disposed even when
Destroythrows - Sequence comparisons in the TUnit package's assertions now dispose the enumerators they create