From 27999f2d2678607538d887032e38774a35d438b8 Mon Sep 17 00:00:00 2001 From: mo8it Date: Tue, 20 Aug 2024 13:49:48 +0200 Subject: [PATCH] Check if exercise doesn't contain tests --- src/dev/check.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/dev/check.rs b/src/dev/check.rs index 6cc2485..6f16e0b 100644 --- a/src/dev/check.rs +++ b/src/dev/check.rs @@ -97,7 +97,12 @@ fn check_info_file_exercises(info_file: &InfoFile) -> Result> { bail!("Didn't find any `// TODO` comment in the file `{path}`.\nYou need to have at least one such comment to guide the user."); } - if !exercise_info.test && file_buf.contains("#[test]\n") { + let contains_tests = file_buf.contains("#[test]\n"); + if exercise_info.test { + if !contains_tests { + bail!("The file `{path}` doesn't contain any tests. If you don't want to add tests to this exercise, set `test = false` for this exercise in the `info.toml` file"); + } + } else if contains_tests { bail!("The file `{path}` contains tests annotated with `#[test]` but the exercise `{name}` has `test = false` in the `info.toml` file"); }