Crates.io | rxpect |
lib.rs | rxpect |
version | 0.1.1 |
source | src |
created_at | 2023-10-09 19:51:06.505316 |
updated_at | 2023-10-09 19:54:07.358059 |
description | Extensible fluent expectations for Rust |
homepage | |
repository | https://github.com/raniz85/rxpect |
max_upload_size | |
id | 998406 |
size | 27,192 |
A Rust library for fluently building expectations in tests.
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.
All other names I could come up with were already taken.
Either Rust Expect or Raniz Expect, pick whichever you like best.
It's pretty simple actually,
wrap whatever you're having expectations on with expect
and then call the different
extension methods.
use rexpect::expect;
use rexpect::expectations::EqualityExpectations;
// Expect 1 plus 1 to equal 2
expect(1 + 1).to_equal(2);
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 rexpect::expect;
use rexpect::expectations::EqualityExpectations;
// Expect 1 plus 1 to equal 3
expect(1 + 1).to_equal(3);
thread 'main' panicked at 'Expectation failed (expected == actual)
expected: `3`
actual: `2`'
Use something else. Here's a bunch of other crates that also does fluent expectations, in no particular order: