Expand description
Assertor makes test assertions and failure messages more human-readable.
Assertor is heavy affected by Java Truth in terms of API design and error messages.
§Example
use assertor::*;
assert_that!("foobarbaz").contains("bar");
assert_that!("foobarbaz").ends_with("baz");
assert_that!(0.5).with_abs_tol(0.2).is_approx_equal_to(0.6);
assert_that!(vec!["a", "b"]).contains("a");
assert_that!(vec!["a", "b"]).has_length(2);
assert_that!(vec!["a", "b"]).contains_exactly(vec!["a", "b"]);
assert_that!(Option::Some("Foo")).has_value("Foo");
§Failure cases
ⓘ
use assertor::*;
assert_that!(vec!["a", "b", "c"]).contains_exactly(vec!["b", "c", "d"]);
// missing (1) : ["d"]
// unexpected (1): ["a"]
// ---
// expected : ["b", "c", "d"]
// actual : ["a", "b", "c"]
Modules§
- Module for testing the assertor library itself. Expected to be used by library developers.
Macros§
- An assertion macro that panics when the assertion fails.
- Only for library developers. An assertion macro to get the result of assertion without throwing panic. Expected to be used for testing assertion library.
Structs§
- Contains assertion results which will be shown in the assertion messages.
- Code location.
- Data structure that contains a value to be tested (actual value) with auxiliary data (ex. line pos, description).
Enums§
- A piece of assertion message.
Traits§
- A behavior for assertion pass and failure.
AssertionResult
implements this traits. - Trait for boolean assertion.
- Trait for comparison assertions.
- Trait for Cow assertion.
- Trait for equality assertion.
- Trait for float assertion.
- Trait for iterator assertion.
- Trait for map assertion.
- Trait for option assertion.
- Trait for ordered map assertion.
- Trait for sorted set assertions.
- Trait for result assertion.
- Trait for set assertion.
- Trait for string assertion.
- Trait for vector assertion.