From 0ab9d01dbdc2f495fc4e62510195d5729fd5d57c Mon Sep 17 00:00:00 2001 From: Guillaume Gomez Date: Wed, 23 Jun 2021 23:56:16 +0200 Subject: [PATCH] Handle windows paths as well --- src/tools/tidy/src/error_codes_check.rs | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/src/tools/tidy/src/error_codes_check.rs b/src/tools/tidy/src/error_codes_check.rs index d1d43e9449ce1..63fbee34bd6e4 100644 --- a/src/tools/tidy/src/error_codes_check.rs +++ b/src/tools/tidy/src/error_codes_check.rs @@ -17,6 +17,12 @@ const EXEMPTED_FROM_TEST: &[&str] = &[ // Some error codes don't have any tests apparently... const IGNORE_EXPLANATION_CHECK: &[&str] = &["E0570", "E0601", "E0602", "E0729"]; +// If the file path contains any of these, we don't want to try to extract error codes from it. +// +// We need to declare each path in the windows version (with backslash). +const PATHS_TO_IGNORE_FOR_EXTRACTION: &[&str] = + &["src/test/", "src\\test\\", "src/doc/", "src\\doc\\", "src/tools/", "src\\tools\\"]; + #[derive(Default, Debug)] struct ErrorCodeStatus { has_test: bool, @@ -220,7 +226,7 @@ pub fn check(paths: &[&Path], bad: &mut bool) { found_tests += 1; } else if entry.path().extension() == Some(OsStr::new("rs")) { let path = entry.path().to_string_lossy(); - if ["src/test/", "src/doc/", "src/tools/"].iter().all(|c| !path.contains(c)) { + if PATHS_TO_IGNORE_FOR_EXTRACTION.iter().all(|c| !path.contains(c)) { extract_error_codes_from_source(contents, &mut error_codes, ®ex); } }