Ward is a modern test framework for Python with a focus on productivity and readability.
toml
to tomli
to support TOML spec v1.0, and speed up parsing.Thanks to @hukkin for these changes!
The ward fixtures
command was failing.
Thanks to @yolong-lin for the fix.
live
output stylein
/not in
assertion failureslive
outputin
/not in
All of these changes were contributed by @JoshKarpel!
Ward now outputs diffs using Rich when when an equality check in an assert
fails within a test.
This let us remove the final pieces of colorama and termcolor code from Ward.
pyproject.toml
defaults were not being applieddots-module
output where it wouldn't display properly if you were in a directory deeper than a running test module.--exclude
to work with paths instead of globs.sys.modules
during collection phase.module.__package__
being set incorrectly in some cases.exclude
defined in pyproject.toml
was not interacting with CLI supplied --path
s correctly.ward
with no --path
: it now means "run all tests in my project". If you want to get specific, supply a path. If we can't find the project, then running ward
is the same as ward --path .
.This release contains no user-facing changes.
Fixes an issue that was introduced in 0.57.0b0 which prevented Ward from entering nested subdirectories when looking for tests.
Adds initial support for plugins using Pluggy. In this release, 3 hooks are available: before_session
, after_session
, and preprocess_tests
.