#文件夹 #断言 #测试

开发 dircmp

比较文件夹并返回断言差异

2个不稳定版本

0.2.0 2022年11月29日
0.1.0 2022年11月29日

#1001 in 文件系统

Download history 248/week @ 2024-04-14 204/week @ 2024-04-21 149/week @ 2024-04-28 105/week @ 2024-05-05 158/week @ 2024-05-12 394/week @ 2024-05-19 199/week @ 2024-05-26 254/week @ 2024-06-02 249/week @ 2024-06-09 235/week @ 2024-06-16 204/week @ 2024-06-23 220/week @ 2024-06-30 134/week @ 2024-07-07 176/week @ 2024-07-14 217/week @ 2024-07-21 174/week @ 2024-07-28

717 每月下载量
用于 4 crates

Apache-2.0

8KB
122 代码行

dircmp

github crates.io docs.rs build status

比较两个文件夹的相似性和差异性。

  • 双向比较
  • 文件类型(目录、符号链接等)
  • 内容差异基于文件哈希,因此二进制文件也适用于比较
  • 适合在测试中进行断言以及捕获差异或相似性快照

依赖

[dependencies]
dircmp = "0.1.0"

用法

默认用法

let cmp = dircmp::Comparison::default();

let result = cmp
    .compare(
        Path::new("/tmp/a"),
        Path::new("/tmp/b"),
    )

忽略组件

use regex::RegexSet;

let ignores = let set = RegexSet::new(&[
    r"foo",
    r"bar",
]).expect("should compile");

let cmp = dircmp::Comparison::new(ignores);

let result = cmp
    .compare(
        Path::new("/tmp/a"),
        Path::new("/tmp/b"),
    )

版权

版权(c)2022 @jondot. 请参阅 LICENSE 获取更多信息。

依赖

~3–11MB
~120K SLoC