1 个不稳定版本
0.1.0 | 2023 年 12 月 2 日 |
---|
#885 在 文件系统
404 次每月下载
在 5 crates 中使用
9KB
101 代码行
tree-fs
通常,测试场景涉及与文件系统的交互。tree-fs
为创建满足测试需求定制的文件系统树提供了一个便捷的解决方案。此库提供
- 一种简单的方法来生成具有递归路径的树。
- 在临时文件夹内创建树。
- 使用 YAML 或构建器创建树的能力。
用法
查看用法示例([这里](./examples))
从构建器
use tree_fs::Tree;
fn main() {
let res = Tree::default()
.add("test/foo.txt", "bar")
.add_empty("test/folder-a/folder-b/bar.txt")
.create();
match res {
Ok(res) => {
println!("created successfully in {}", res.display());
}
Err(err) => {
println!("creating tree files finish with errors: {err}");
}
}
}
使用 YAML 文件
use std::path::PathBuf;
fn main() {
let yaml_path = PathBuf::from("tree-create/tests/fixtures/tree.yaml");
let res = tree_fs::from_yaml_file(&yaml_path);
match res {
Ok(res) => {
println!("created successfully in {}", res.display());
}
Err(err) => {
println!("creating tree files finish with errors: {err}");
}
}
}
使用 YAML 字符串
use std::fs;
fn main() {
let content =
fs::read_to_string("tree-create/tests/fixtures/tree.yaml").expect("Unable to read file");
let res = tree_fs::from_yaml_str(&content);
match res {
Ok(res) => {
println!("created successfully in {}", res.display());
}
Err(err) => {
println!("creating tree files finish with errors: {err}");
}
}
}
依赖项
~0.6–1.6MB
~34K SLoC