Expand description
§random-dir
§Introduction
random-dir is a library that helps create directories with random contents.
The intended usage is to generate random directory,
feed this directory as an input to some function, and
then compare the output of this function to the expected output.
This crate is particularly useful to test archiver crates like kpea.
§Example
use random_dir::list_dir_all;
use random_dir::Dir;
use arbtest::arbtest;
fn test_pack_unpack_symmetry() {
arbtest(|u| {
let directory: Dir = u.arbitrary()?;
// Pack the directory to a temporary archive file.
// Unpack the temporary archive file to `/tmp/unpack-dir`.
let files1 = list_dir_all(directory.path()).unwrap();
let files2 = list_dir_all("/tmp/unpack-dir").unwrap();
assert_eq!(files1, files2);
Ok(())
});
}Structs§
- Dir
- Directory with randomly generated contents.
- DirBuilder
Dirconfiguration.- File
Info - File’s path, metadata and contents.
- Metadata
- File’s metadata.
Enums§
- File
Type - File type.
Constants§
- ALL_
FILE_ TYPES - All file types supported by the platform.
Functions§
- list_
dir_ all - Recursively list specified directory.