Skip to main content

differences

Function differences 

Source
pub fn differences(
    before: &WorktreeFingerprint,
    after: &WorktreeFingerprint,
) -> Vec<String>
Expand description

Everything that differs between two fingerprints, one line each. Empty means equal.

use majordomus_cli::worktree::fingerprint::{differences, WorktreeFingerprint};
let a = WorktreeFingerprint {
    branch: Some("x".into()), head: Some("abc".into()), index_digest: "i".into(),
    staged_diff_digest: "s".into(), unstaged_diff_digest: "u".into(),
    untracked_manifest_digest: "m".into(), untracked_files: 2, ignored_manifest_digest: "g".into(),
    in_progress: None, tree_manifest_digest: None,
};
let mut b = a.clone();
assert!(differences(&a, &b).is_empty());
b.untracked_files = 1; b.untracked_manifest_digest = "n".into();
let d = differences(&a, &b);
assert_eq!(d.len(), 1);
assert!(d[0].contains("untracked"));