Skip to content

Commit 08c03a7

Browse files
authored
Merge pull request #4 from triarius/fix-trailing-slash
Fix trailing slash should match all descendants
2 parents e7fa119 + 670b40c commit 08c03a7

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

src/parser/mod.rs

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,12 @@ pub fn parse(input: &str) -> CodeOwners {
1919
let path = tokens.next()?.to_string();
2020
let owners: Vec<String> = tokens.map(String::from).collect();
2121

22+
let path = if path.ends_with('/') {
23+
format!("{path}**")
24+
} else {
25+
path
26+
};
27+
2228
Some(OwnedPath { path, owners })
2329
})
2430
.collect()
@@ -43,11 +49,11 @@ mod tests {
4349
";
4450

4551
let expected: CodeOwners = vec![
46-
("/src/", vec!["codeowner1", "codeowner2"]),
47-
("/docs/", vec!["codeowner3"]),
48-
("/tests/", vec!["codeowner4"]),
49-
("/src/utils/", vec!["codeowner5"]),
50-
("/src/utils/helpers/", vec!["codeowner6"]),
52+
("/src/**", vec!["codeowner1", "codeowner2"]),
53+
("/docs/**", vec!["codeowner3"]),
54+
("/tests/**", vec!["codeowner4"]),
55+
("/src/utils/**", vec!["codeowner5"]),
56+
("/src/utils/helpers/**", vec!["codeowner6"]),
5157
]
5258
.into_iter()
5359
.map(|(path, owners)| OwnedPath {
@@ -76,15 +82,15 @@ mod tests {
7682
("*.js", vec!["@js-owner"]),
7783
("*.go", vec!["docs@example.com"]),
7884
("*.txt", vec!["@octo-org/octocats"]),
79-
("/build/logs/", vec!["@doctocat"]),
85+
("/build/logs/**", vec!["@doctocat"]),
8086
("docs/*", vec!["docs@example.com"]),
81-
("apps/", vec!["@octocat"]),
82-
("/docs/", vec!["@doctocat"]),
83-
("/scripts/", vec!["@doctocat", "@octocat"]),
87+
("apps/**", vec!["@octocat"]),
88+
("/docs/**", vec!["@doctocat"]),
89+
("/scripts/**", vec!["@doctocat", "@octocat"]),
8490
("**/logs", vec!["@octocat"]),
85-
("/apps/", vec!["@octocat"]),
91+
("/apps/**", vec!["@octocat"]),
8692
("/apps/github", vec![]),
87-
("/apps/", vec!["@octocat"]),
93+
("/apps/**", vec!["@octocat"]),
8894
("/apps/github", vec!["@doctocat"]),
8995
]
9096
.into_iter()

0 commit comments

Comments
 (0)