Commit db438947 authored by Rusty Russell's avatar Rusty Russell

ccanlint: fix _info option handling

Two places were using a bogus ccanlint struct: the side-effect was
that valgrind options didn't work, nor did license fixups.

Make REGISTER_TEST do the extern declaration, and remove the bogus
ones.
parent 10044422
......@@ -4,7 +4,7 @@
#include <stdbool.h>
#include "../doc_extract.h"
#define REGISTER_TEST(name, ...)
#define REGISTER_TEST(name, ...) extern struct ccanlint name
/* 0 == Describe failed tests.
1 == Describe results for partial failures.
......
......@@ -15,7 +15,7 @@
#include <ccan/noerr/noerr.h>
#include <ccan/grab_file/grab_file.h>
extern struct ccanlint info_documentation_exists;
REGISTER_TEST(info_documentation_exists);
static void create_info_template_doc(struct manifest *m, struct score *score)
{
......@@ -101,4 +101,3 @@ struct ccanlint info_documentation_exists = {
.needs = "info_exists"
};
REGISTER_TEST(info_documentation_exists);
......@@ -11,7 +11,7 @@
#include <ccan/talloc/talloc.h>
#include <ccan/str/str.h>
struct ccanlint has_license;
REGISTER_TEST(license_exists);
static struct doc_section *find_license(const struct manifest *m)
{
......@@ -114,7 +114,7 @@ static void check_has_license(struct manifest *m,
score->error = talloc_strdup(score,
"LICENSE does not exist");
if (expected)
has_license.handle = handle_license_link;
license_exists.handle = handle_license_link;
return;
}
err(1, "readlink on %s", license);
......@@ -156,5 +156,3 @@ struct ccanlint license_exists = {
.check = check_has_license,
.needs = "info_exists"
};
REGISTER_TEST(license_exists);
......@@ -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)
{
......@@ -135,4 +135,3 @@ struct ccanlint tests_exist = {
.needs = ""
};
REGISTER_TEST(tests_exist);
......@@ -17,7 +17,7 @@
#include <string.h>
#include <ctype.h>
struct ccanlint run_tests_vg;
REGISTER_TEST(tests_pass_valgrind);
/* Note: we already test safe_mode in run_tests.c */
static const char *can_run_vg(struct manifest *m)
......@@ -115,8 +115,8 @@ static void do_run_tests_vg(struct manifest *m,
" --leak-check=full"
" --log-fd=3 %s %s"
" 3> valgrind.log",
run_tests_vg.options ?
run_tests_vg.options : "",
tests_pass_valgrind.options ?
tests_pass_valgrind.options : "",
i->compiled);
output = grab_file(i, "valgrind.log", NULL);
if (!output || output[0] == '\0') {
......@@ -173,8 +173,8 @@ static void run_under_debugger_vg(struct manifest *m, struct score *score)
first = list_top(&score->per_file_errors, struct file_error, list);
command = talloc_asprintf(m, "valgrind --db-attach=yes%s %s",
run_tests_vg.options ?
run_tests_vg.options : "",
tests_pass_valgrind.options ?
tests_pass_valgrind.options : "",
first->file->compiled);
if (system(command))
doesnt_matter();
......@@ -190,8 +190,6 @@ struct ccanlint tests_pass_valgrind = {
.needs = "tests_pass"
};
REGISTER_TEST(tests_pass_valgrind);
struct ccanlint tests_pass_valgrind_noleaks = {
.key = "tests_pass_valgrind_noleaks",
.name = "Module's run and api tests have no memory leaks",
......
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