Crates.io | facilitest |
lib.rs | facilitest |
version | 1.0.0 |
source | src |
created_at | 2024-03-12 21:19:26.653745 |
updated_at | 2024-03-23 20:24:53.667013 |
description | Utilities that facilitate testing |
homepage | |
repository | https://github.com/SteScheller/facilitest |
max_upload_size | |
id | 1171013 |
size | 4,374 |
facilitest
aims to facilitate writing tests (pun intended) by relieving you of writing boilerplate code and providing additional functionality such as parametrized tests.
Run cargo add facilitest
or add this to your Cargo.toml
:
[dependencies]
facilitest = "1.0.0"
Add this to your test module:
use facilitest::*;
Test a function with a set of different arguments:
test_p! {
<function identifier>,
(
<test case label>: (<input arguments>), <expected result>
...
)
}
Note: test case labels must be valid identifiers. Prefix numbers with an underscore if you want to numerate them.
#[cfg(test)]
mod example {
use facilitest::*;
test_p! {
std::cmp::max,
(
_0: (-10, -1), -1
_1: (-10, 10), 10
_2: ("a", "A"), "a"
)
}
}
$ cargo test
...
running 3 tests
test example::test_max_0 ... ok
test example::test_max_1 ... ok
test example::test_max_2 ... ok
test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s