diff options
Diffstat (limited to 'crates/tools/tests/cli.rs')
-rw-r--r-- | crates/tools/tests/cli.rs | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/crates/tools/tests/cli.rs b/crates/tools/tests/cli.rs index aab52a4aa..6f82ae61d 100644 --- a/crates/tools/tests/cli.rs +++ b/crates/tools/tests/cli.rs | |||
@@ -1,4 +1,6 @@ | |||
1 | use tools::{generate, gen_tests, run_rustfmt, Verify}; | 1 | use walkdir::WalkDir; |
2 | |||
3 | use tools::{generate, gen_tests, run_rustfmt, Verify, project_root}; | ||
2 | 4 | ||
3 | #[test] | 5 | #[test] |
4 | fn generated_grammar_is_fresh() { | 6 | fn generated_grammar_is_fresh() { |
@@ -20,3 +22,25 @@ fn check_code_formatting() { | |||
20 | panic!("{}. Please format the code by running `cargo format`", error); | 22 | panic!("{}. Please format the code by running `cargo format`", error); |
21 | } | 23 | } |
22 | } | 24 | } |
25 | |||
26 | #[test] | ||
27 | fn no_todo() { | ||
28 | WalkDir::new(project_root().join("crates")).into_iter().for_each(|e| { | ||
29 | let e = e.unwrap(); | ||
30 | if e.path().extension().map(|it| it != "rs").unwrap_or(true) { | ||
31 | return; | ||
32 | } | ||
33 | if e.path().ends_with("tests/cli.rs") { | ||
34 | return; | ||
35 | } | ||
36 | let text = std::fs::read_to_string(e.path()).unwrap(); | ||
37 | if text.contains("TODO") { | ||
38 | panic!( | ||
39 | "\nTODO markers should not be commited to the master branch,\n\ | ||
40 | use FIXME instead\n\ | ||
41 | {}\n", | ||
42 | e.path().display(), | ||
43 | ) | ||
44 | } | ||
45 | }) | ||
46 | } | ||