From 37c06f735fe985f19f6fadf47d03b15fa45b5317 Mon Sep 17 00:00:00 2001 From: Rusty Russell Date: Wed, 2 Mar 2011 14:23:21 +1030 Subject: [PATCH] ccanlint: don't fail just because we don't have positive tests. cast package has all negative tests, plus testable examples. --- tools/ccanlint/tests/tests_coverage.c | 9 +++++++++ tools/ccanlint/tests/tests_exist.c | 11 ++++------- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/tools/ccanlint/tests/tests_coverage.c b/tools/ccanlint/tests/tests_coverage.c index 67829e96..a8da103f 100644 --- a/tools/ccanlint/tests/tests_coverage.c +++ b/tools/ccanlint/tests/tests_coverage.c @@ -135,6 +135,7 @@ static void do_run_coverage_tests(struct manifest *m, char *covcmd; bool full_gcov = (verbose > 1); struct list_head *list; + bool ran_some = false; /* This tells gcov where we put those .gcno files. */ outdir = talloc_dirname(score, m->info_file->compiled); @@ -165,9 +166,17 @@ static void do_run_coverage_tests(struct manifest *m, " failed: %s", cmdout); return; } + ran_some = true; } } + /* No tests at all? 0 out of 0 for you... */ + if (!ran_some) { + score->total = score->score = 0; + score->pass = true; + return; + } + /* Now run gcov: we want output even if it succeeds. */ if (!run_command(score, timeleft, &cmdout, "%s", covcmd)) { score->error = talloc_asprintf(score, "Running gcov: %s", diff --git a/tools/ccanlint/tests/tests_exist.c b/tools/ccanlint/tests/tests_exist.c index 86f7ef27..061a9052 100644 --- a/tools/ccanlint/tests/tests_exist.c +++ b/tools/ccanlint/tests/tests_exist.c @@ -114,14 +114,11 @@ static void check_tests_exist(struct manifest *m, 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 = talloc_strdup(score, + && 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; - } else - score->error = talloc_strdup(score, - "No positive tests in test directory"); + tests_exist.handle = handle_no_tests; return; } score->pass = true; -- 2.39.2