26 个版本 (稳定版)

1.7.1 2024年4月16日
1.6.0 2023年11月7日
1.5.2 2023年7月30日
1.4.5 2022年11月6日
0.5.0 2016年12月4日

#33测试 类别中

Download history 5504/week @ 2024-05-01 7845/week @ 2024-05-08 7667/week @ 2024-05-15 7303/week @ 2024-05-22 7762/week @ 2024-05-29 8615/week @ 2024-06-05 11376/week @ 2024-06-12 11901/week @ 2024-06-19 13233/week @ 2024-06-26 10709/week @ 2024-07-03 11171/week @ 2024-07-10 9376/week @ 2024-07-17 10553/week @ 2024-07-24 9461/week @ 2024-07-31 9452/week @ 2024-08-07 11157/week @ 2024-08-14

42,515 每月下载量
34 个 Crates 中使用 (直接使用21个)

MIT 许可证

12KB
177 行代码

👑 Rust Goldenfile

Documentation Latest Version Build Status Coverage Status

Rust 中简单的 goldenfile 测试。

Goldenfile 测试在运行时生成一个或多个输出文件。如果任何文件与已提交的“黄金”版本不同,则测试失败。这确保了行为更改是有意为之、明确且版本控制的。

您可以使用 goldenfiles 来测试解析器的输出、图遍历的顺序、模拟的结果或其他任何仅应经过人工审查才应更改的内容。

用法

use goldenfile::Mint;
use std::io::Write;

let mut mint = Mint::new("tests/goldenfiles");
let mut file1 = mint.new_goldenfile("file1.txt").unwrap();
let mut file2 = mint.new_goldenfile("file2.txt").unwrap();

writeln!(file1, "Hello world!").unwrap();
writeln!(file2, "Foo bar!").unwrap();

Mint 超出作用域时,它将每个文件的 内容与已提交的黄金版本进行比较,如果它们不同则测试失败。要更新已提交的版本,请运行

UPDATE_GOLDENFILES=1 cargo test

贡献

欢迎提交拉取请求!本项目遵循 Rust 社区的 行为准则

依赖项

~2–10MB
~122K SLoC