1 个不稳定版本
使用旧的 Rust 2015
0.1.0 | 2017年7月30日 |
---|
#846 在 测试
6KB
57 行
Vinegar
一组用于帮助测试 Rust 代码的函数和宏。
宏
expect
检查布尔条件,类似于assert
。expect_eq
检查两个值是否相等,类似于assert_eq
。
函数
fn check<I>(期望:I) 在哪里I: IntoIterator<Item=Result<(), String>>
接受一个 Result<(), String>
类型的集合,这恰好是期望宏返回的类型。
因此,check
函数基本上是用来检查使用 expect
宏做出的断言。
用法
示例用法
use vinegar::check;
#[test]
fn use_check() {
// simple test: just check some expectations:
check(vec![
expect_eq!(2 + 2, 4),
expect!(2 + 2 == 4),
expect_eq!("hi", "hi"),
]);
// simple example-based test
let examples = [1, 2, 3, ];
check(examples.iter().map(|&ex| expect!(ex > 0)));
// example-based test with both input and assertion as examples
let examples = vec![
// (input, expected result)
(1, 2),
(2, 4),
(3, 6),
];
check(examples.iter().map(|&(input, expected)| {
let result = input * 2;
expect_eq!(result, expected)
}));
}