equal
deleted
inserted
replaced
789 let RootsDirsAndParents { |
789 let RootsDirsAndParents { |
790 roots, |
790 roots, |
791 dirs, |
791 dirs, |
792 parents, |
792 parents, |
793 } = roots_dirs_and_parents(&ignore_patterns)?; |
793 } = roots_dirs_and_parents(&ignore_patterns)?; |
794 let prefix = ignore_patterns.iter().any(|k| match k.syntax { |
794 let prefix = ignore_patterns.iter().all(|k| match k.syntax { |
795 PatternSyntax::Path | PatternSyntax::RelPath => true, |
795 PatternSyntax::Path | PatternSyntax::RelPath => true, |
796 _ => false, |
796 _ => false, |
797 }); |
797 }); |
798 let (patterns, match_fn) = build_match(ignore_patterns)?; |
798 let (patterns, match_fn) = build_match(ignore_patterns)?; |
799 |
799 |
1090 matcher.visit_children_set(HgPath::new(b"dir/subdir")), |
1090 matcher.visit_children_set(HgPath::new(b"dir/subdir")), |
1091 VisitChildrenSet::This |
1091 VisitChildrenSet::This |
1092 ); |
1092 ); |
1093 assert_eq!( |
1093 assert_eq!( |
1094 matcher.visit_children_set(HgPath::new(b"dir/subdir/x")), |
1094 matcher.visit_children_set(HgPath::new(b"dir/subdir/x")), |
|
1095 VisitChildrenSet::This |
|
1096 ); |
|
1097 |
|
1098 // Test multiple patterns |
|
1099 let matcher = IncludeMatcher::new(vec![ |
|
1100 IgnorePattern::new(PatternSyntax::RelPath, b"foo", Path::new("")), |
|
1101 IgnorePattern::new(PatternSyntax::Glob, b"g*", Path::new("")), |
|
1102 ]) |
|
1103 .unwrap(); |
|
1104 |
|
1105 assert_eq!( |
|
1106 matcher.visit_children_set(HgPath::new(b"")), |
|
1107 VisitChildrenSet::This |
|
1108 ); |
|
1109 |
|
1110 // Test multiple patterns |
|
1111 let matcher = IncludeMatcher::new(vec![IgnorePattern::new( |
|
1112 PatternSyntax::Glob, |
|
1113 b"**/*.exe", |
|
1114 Path::new(""), |
|
1115 )]) |
|
1116 .unwrap(); |
|
1117 |
|
1118 assert_eq!( |
|
1119 matcher.visit_children_set(HgPath::new(b"")), |
1095 VisitChildrenSet::This |
1120 VisitChildrenSet::This |
1096 ); |
1121 ); |
1097 } |
1122 } |
1098 |
1123 |
1099 #[test] |
1124 #[test] |