about summary refs log tree commit diff
path: root/src
diff options
context:
space:
mode:
authorNadrieril <nadrieril+git@gmail.com>2024-02-08 01:46:06 +0100
committerNadrieril <nadrieril+git@gmail.com>2024-02-08 01:51:12 +0100
commit2b95b68304b4bf48031e8dd7cd4754c647022f03 (patch)
treeef3ae9c15f258247d4bd1d47b4e1ec1cc9495b67 /src
parent8ace7ea1f7cbba7b4f031e66c54ca237a0d65de6 (diff)
downloadrust-2b95b68304b4bf48031e8dd7cd4754c647022f03.tar.gz
rust-2b95b68304b4bf48031e8dd7cd4754c647022f03.zip
Suggest pattern tests when modifying exhaustiveness
Diffstat (limited to 'src')
-rw-r--r--src/tools/suggest-tests/src/dynamic_suggestions.rs41
1 files changed, 25 insertions, 16 deletions
diff --git a/src/tools/suggest-tests/src/dynamic_suggestions.rs b/src/tools/suggest-tests/src/dynamic_suggestions.rs
index 2b0213cdc22..f09720f1c91 100644
--- a/src/tools/suggest-tests/src/dynamic_suggestions.rs
+++ b/src/tools/suggest-tests/src/dynamic_suggestions.rs
@@ -4,20 +4,29 @@ use crate::Suggestion;
 
 type DynamicSuggestion = fn(&Path) -> Vec<Suggestion>;
 
-pub(crate) const DYNAMIC_SUGGESTIONS: &[DynamicSuggestion] = &[|path: &Path| -> Vec<Suggestion> {
-    if path.starts_with("compiler/") || path.starts_with("library/") {
-        let path = path.components().take(2).collect::<Vec<_>>();
+pub(crate) const DYNAMIC_SUGGESTIONS: &[DynamicSuggestion] = &[
+    |path: &Path| -> Vec<Suggestion> {
+        if path.starts_with("compiler/") || path.starts_with("library/") {
+            let path = path.components().take(2).collect::<Vec<_>>();
 
-        vec![Suggestion::with_single_path(
-            "test",
-            None,
-            &format!(
-                "{}/{}",
-                path[0].as_os_str().to_str().unwrap(),
-                path[1].as_os_str().to_str().unwrap()
-            ),
-        )]
-    } else {
-        Vec::new()
-    }
-}];
+            vec![Suggestion::with_single_path(
+                "test",
+                None,
+                &format!(
+                    "{}/{}",
+                    path[0].as_os_str().to_str().unwrap(),
+                    path[1].as_os_str().to_str().unwrap()
+                ),
+            )]
+        } else {
+            Vec::new()
+        }
+    },
+    |path: &Path| -> Vec<Suggestion> {
+        if path.starts_with("compiler/rustc_pattern_analysis") {
+            vec![Suggestion::new("test", None, &["tests/ui", "--test-args", "pattern"])]
+        } else {
+            Vec::new()
+        }
+    },
+];