Commit 37c06f73 authored by Rusty Russell's avatar Rusty Russell

ccanlint: don't fail just because we don't have positive tests.

cast package has all negative tests, plus testable examples.
parent 975dff72
...@@ -135,6 +135,7 @@ static void do_run_coverage_tests(struct manifest *m, ...@@ -135,6 +135,7 @@ static void do_run_coverage_tests(struct manifest *m,
char *covcmd; char *covcmd;
bool full_gcov = (verbose > 1); bool full_gcov = (verbose > 1);
struct list_head *list; struct list_head *list;
bool ran_some = false;
/* This tells gcov where we put those .gcno files. */ /* This tells gcov where we put those .gcno files. */
outdir = talloc_dirname(score, m->info_file->compiled); outdir = talloc_dirname(score, m->info_file->compiled);
...@@ -165,9 +166,17 @@ static void do_run_coverage_tests(struct manifest *m, ...@@ -165,9 +166,17 @@ static void do_run_coverage_tests(struct manifest *m,
" failed: %s", cmdout); " failed: %s", cmdout);
return; 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. */ /* Now run gcov: we want output even if it succeeds. */
if (!run_command(score, timeleft, &cmdout, "%s", covcmd)) { if (!run_command(score, timeleft, &cmdout, "%s", covcmd)) {
score->error = talloc_asprintf(score, "Running gcov: %s", score->error = talloc_asprintf(score, "Running gcov: %s",
......
...@@ -114,14 +114,11 @@ static void check_tests_exist(struct manifest *m, ...@@ -114,14 +114,11 @@ static void check_tests_exist(struct manifest *m,
if (list_empty(&m->api_tests) if (list_empty(&m->api_tests)
&& list_empty(&m->run_tests) && list_empty(&m->run_tests)
&& list_empty(&m->compile_ok_tests)) { && list_empty(&m->compile_ok_tests)
if (list_empty(&m->compile_fail_tests)) { && list_empty(&m->compile_fail_tests)) {
score->error = talloc_strdup(score, score->error = talloc_strdup(score,
"No tests in test directory"); "No tests in test directory");
tests_exist.handle = handle_no_tests; tests_exist.handle = handle_no_tests;
} else
score->error = talloc_strdup(score,
"No positive tests in test directory");
return; return;
} }
score->pass = true; score->pass = true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment