5 个版本 (破坏性更新)
0.5.0 | 2023年12月20日 |
---|---|
0.4.0 | 2020年3月7日 |
0.3.0 | 2020年1月12日 |
0.2.0 | 2020年1月12日 |
0.1.0 | 2020年1月12日 |
#217 在 Cargo 插件
每月 25 次下载
20KB
477 行
cargo-fixeq
通过编辑源代码以匹配测试输出,修复 assert_eq!
测试错误。
受 Mercurial 的 run-tests.py -i
启发。
安装
cargo install cargo-fixeq
示例
像往常一样使用 assert_eq!
编写测试。将需要评估的代码放在左侧,在右侧留一个占位符值
fn f(n: usize) -> usize {
if n <= 2 { 1 } else { f(n - 1) + f(n - 2) }
}
#[test]
fn test_f() {
assert_eq!(f(10), 0);
assert_eq!(f(20), 0);
}
从项目根目录运行 cargo fixeq
cargo fixeq
自动修复占位符值
fn test_f() {
- assert_eq!(f(10), 0);
- assert_eq!(f(20), 0);
+ assert_eq!(f(10), 55);
+ assert_eq!(f(20), 6765);
}
通常,cargo-fixeq
对于编写初始测试和更新测试很有帮助。有关更复杂的实际示例,请参阅 此处。
命令行参数
所有参数都传递给 cargo test
。 cargo-fixeq
不定义自己的参数。
版本
cargo-fixeq 0.5
适用于 Rust >= 1.73,它 改变了assert_eq!
输出格式。cargo-fixeq 0.4
适用于 Rust < 1.73。
类似项目
- expect-test:轻量级快照测试。
依赖项
~1.5MB
~38K SLoC