use sauron::dom::skip_diff::SkipAttrs;
use sauron::*;
#[test]
fn simple() {
let skip = skip_if(false, []);
let path = TreePath::new([]);
assert!(!skip.in_path(&path).unwrap().shall_skip_attributes());
}
#[test]
fn simple_skip() {
let skip = skip_if(true, []);
let path = TreePath::new([]);
assert!(skip.in_path(&path).unwrap().shall_skip_attributes());
}
#[test]
fn skip_level1() {
let skip = skip_if(false, [skip_if(true, [])]);
let path = TreePath::new([0]);
assert!(skip.in_path(&path).unwrap().shall_skip_attributes());
}
#[test]
fn dont_collapsed_with_templates() {
let skip = skip_if(
true,
[SkipDiff {
skip_attrs: SkipAttrs::none(),
children: vec![],
}],
);
let path = TreePath::new([0]);
assert!(!skip.in_path(&path).unwrap().shall_skip_attributes());
}
#[test]
fn dont_skip_if_path_has_a_sibling_that_cant_be_skipped() {
let skip = skip_if(
true,
[SkipDiff {
skip_attrs: SkipAttrs::none(),
children: vec![],
}],
);
let path = TreePath::new([0]);
assert!(!skip.in_path(&path).unwrap().shall_skip_attributes());
}