]> git.ozlabs.org Git - ccan/blobdiff - tools/ccanlint/tests/tests_exist.c
ccanlint: don't fail just because we don't have positive tests.
[ccan] / tools / ccanlint / tests / tests_exist.c
index bdfe49d56b8725389b279671052fd8356f499a06..061a905227da58af30f67bdf484bb2b5d186b445 100644 (file)
@@ -10,7 +10,7 @@
 #include <err.h>
 #include <ccan/talloc/talloc.h>
 
-extern struct ccanlint tests_exist;
+REGISTER_TEST(tests_exist);
 
 static void handle_no_tests(struct manifest *m, struct score *score)
 {
@@ -100,7 +100,7 @@ static void check_tests_exist(struct manifest *m,
        char *test_dir = talloc_asprintf(m, "%s/test", m->dir);
 
        if (lstat(test_dir, &st) != 0) {
-               score->error = "No test directory";
+               score->error = talloc_strdup(score, "No test directory");
                if (errno != ENOENT)
                        err(1, "statting %s", test_dir);
                tests_exist.handle = handle_no_tests;
@@ -108,18 +108,17 @@ static void check_tests_exist(struct manifest *m,
        }
 
        if (!S_ISDIR(st.st_mode)) {
-               score->error = "test is not a directory";
+               score->error = talloc_strdup(score, "test is not a directory");
                return;
        }
 
        if (list_empty(&m->api_tests)
            && list_empty(&m->run_tests)
-           && list_empty(&m->compile_ok_tests)) {
-               if (list_empty(&m->compile_fail_tests)) {
-                       score->error = "No tests in test directory";
-                       tests_exist.handle = handle_no_tests;
-               } else
-                       score->error = "No positive tests in test directory";
+           && list_empty(&m->compile_ok_tests)
+           && list_empty(&m->compile_fail_tests)) {
+               score->error = talloc_strdup(score,
+                                            "No tests in test directory");
+               tests_exist.handle = handle_no_tests;
                return;
        }
        score->pass = true;
@@ -133,4 +132,3 @@ struct ccanlint tests_exist = {
        .needs = ""
 };
 
-REGISTER_TEST(tests_exist);