[−][src]Crate assert_fs
Filesystem fixtures and assertions for testing.
Fixtures:
- A sandbox to work within (see
TempDir
). - Setup the sandbox (see
FileTouch
,FileWriteBin
,FileWriteStr
,PathCopy
).
For assertions, see PathAssert
.
[dependencies]
assert_fs = "0.11"
Overview
Setting up a fixture
TempDir
orNamedTempFile
touch
aChildPath
orNamedTempFile
write_binary
aChildPath
orNamedTempFile
write_str
aChildPath
orNamedTempFile
write_file
aChildPath
orNamedTempFile
copy_from
a pristine folder to aChildPath
orTempDir
Validating
assert
aChildPath
,TempDir
, orNamedTempFile
Example
Here is a trivial example:
extern crate assert_fs; extern crate predicates; use assert_fs::prelude::*; use predicates::prelude::*; let temp = assert_fs::TempDir::new().unwrap(); let input_file = temp.child("foo.txt"); input_file.touch().unwrap(); // ... do something with input_file ... input_file.assert(""); temp.child("bar.txt").assert(predicate::path::missing()); temp.close().unwrap();
Relevant crates
Other crates that might be useful in testing command line programs.
Modules
assert | Filesystem assertions. |
fixture | Initialize the filesystem to use as test fixtures. |
prelude | Extension traits that are useful to have available. |
Structs
NamedTempFile | A potential file in the filesystem that is automatically deleted when it goes out of scope. |
TempDir | A directory in the filesystem that is automatically deleted when it goes out of scope. |