#matcher #fluent #assertions #expectations

rxpect

为Rust提供的可扩展流畅期望

2个版本

0.1.1 2023年10月9日
0.1.0 2023年10月9日

#627 in 测试

MIT/Apache

16KB
321

RXpect

一个用于在测试中流畅构建期望的Rust库。

还有其他流畅断言库吗?

其他库都无法完全符合我的期望。我还想测试一下关于Rust中流畅断言库的工作方式的设想。

这个名字是什么意思?

我能想到的其他名字都已经有人使用了。

它的意思是什么?

要么是 Rust Expect,要么是 Raniz Expect,随便你选哪个。

我如何使用这个库?

实际上很简单,用 expect 包裹你要期望的东西,然后调用不同的扩展方法。

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

失败报告很整洁

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`'

我不喜欢它

使用其他库。以下是一些也提供流畅期望的其他库,不分先后顺序:

无运行时依赖