1 个不稳定版本
0.1.0 | 2022年9月25日 |
---|
#555 在 测试
35KB
883 行
testdata-rs
用于基于文件测试的宏和辅助函数。
示例
该包的主要功能是 testdata::files
,它可以自动查找测试文件并将其展开为多个测试。
use std::str;
use testdata::{assert_snapshot, TestFile};
#[testdata::files(rebuild = "tests/example.rs")]
#[test]
fn test_foo(
#[glob = "tests/fixtures/**/*-in.txt"] input: &TestFile,
#[glob = "tests/fixtures/**/*-out.txt"] output: &TestFile,
) {
let s = input.raw_read();
let s = str::from_utf8(&s).unwrap();
let result = s.to_uppercase();
assert_snapshot!(result, snapshot = output);
}
后续版本将添加更多文档。
lib.rs
:
用于基于文件测试的宏和辅助函数。
示例
该包的主要功能是 testdata::files
,它可以自动查找测试文件并将其展开为多个测试。
use std::str;
use testdata::{assert_snapshot, TestFile};
#[testdata::files(rebuild = "tests/example.rs")]
#[test]
fn test_foo(
#[glob = "tests/fixtures/**/*-in.txt"] input: &TestFile,
#[glob = "tests/fixtures/**/*-out.txt"] output: &TestFile,
) {
let s = input.raw_read();
let s = str::from_utf8(&s).unwrap();
let result = s.to_uppercase();
assert_snapshot!(result, snapshot = output);
}
后续版本将添加更多文档。
依赖
~2–11MB
~123K SLoC