Assert that strings equal easily updatable snapshot files. Show nice colored diffs if not.
/// Regression test for `impl Display` of a complex type.
#[test]
fn test_display_of_some_type() {
let value = ... // produce a value somehow
snapshot_testing::assert_eq_or_update(
value.to_string(),
"./tests/snapshots/display-impl.txt",
);
}# Create (or update) the snapshot file
UPDATE_SNAPSHOTS=yes cargo test
# Ensure the Display impl is not accidentally changed
cargo testWe use the excellent insta diffing engine without suffering from Issue #425: GitHub syntax highlights insta snapshots like Jest Snapshots which unfortunately makes diffs very hard to read.
This crate is very small and easily audited with the following command 1:
curl -H "User-Agent: $USER at $HOST" \
-L https://crates.io/api/v1/crates/snapshot-testing/0.1.8/download |
tar --extract --gzip --to-stdout |
lessFootnotes
-
Please also see crates.io Data Access Policy. ↩