cli-snap is a command-line interface (CLI) tool designed for testing other CLI applications using a snapshot-based testing strategy.
Using cargo
cargo install cli-snap
- Create a test suite file named cli-snap.toml to define your testing commands:
[[tests]]
commands = ["echo 'Hello'"]
id = "hello-world"
[[tests]]
commands = ["echo 'test 2'", "echo 'second hello'"]
id = "test-2"
[config]
snapshot_directory = "./snaps"
| Ensure each test has a unique ID to distinguish and identify each snapshot.
- Run the test suite using the following command:
cli-snap --config <directory where you have saved toml>
- To update snapshots, run the command.
cli-snap --config <directory where you have saved toml> --update-snapshot