RXpect
A Rust library for fluently building expectations in tests.
Another library for fluent assertions?
None of the other libraries worked quite like I wanted them to. I also wanted to test my ideas about how a fluent assertion library in Rust could work.
What about the name?
All other names I could come up with were already taken.
What does it mean?
Either Rust Expect or Raniz Expect, pick whichever you like best.
How do I use this thing?
It's pretty simple actually,
wrap whatever you're having expectations on with expect and then call the different
extension methods.
use expect;
use EqualityExpectations;
// Expect 1 plus 1 to equal 2
expect.to_equal;
running 1 test
test tests::that_one_plus_one_equals_two ... ok
test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
Failures are neatly reported:
use expect;
use EqualityExpectations;
// Expect 1 plus 1 to equal 3
expect.to_equal;
thread 'main' panicked at 'Expectation failed (expected == actual)
expected: `3`
actual: `2`'
I don't like it
Use something else. Here's a bunch of other crates that also does fluent expectations, in no particular order:
- https://crates.io/crates/totems
- https://crates.io/crates/lets_expect
- https://crates.io/crates/fluent-assertions
- https://crates.io/crates/xpct
- https://crates.io/crates/expect
- https://crates.io/crates/fluent-asserter
- https://crates.io/crates/spectral
- https://crates.io/crates/assertables
- https://crates.io/crates/speculoos
- https://crates.io/crates/assert
- https://crates.io/crates/rassert