#include "config.h"
#include <ccan/list/list.h>
#include <ccan/dgraph/dgraph.h>
+#include <ccan/autodata/autodata.h>
#include <stdbool.h>
#include "../doc_extract.h"
#include "licenses.h"
-#define REGISTER_TEST(name, ...) extern struct ccanlint name
+AUTODATA_TYPE(ccanlint_tests, struct ccanlint);
+#define REGISTER_TEST(test) AUTODATA(ccanlint_tests, &test)
/* 0 == Describe failed tests.
1 == Describe results for partial failures.
/* Should we stop immediately if test fails? */
bool compulsory;
- /* keep is set if you should keep the results.
- * If timeleft is set to 0, means it timed out.
+ /* If timeleft is set to 0, means it timed out.
* score is the result, and a talloc context freed after all our
* depends are done. */
void (*check)(struct manifest *m,
- bool keep, unsigned int *timeleft, struct score *score);
+ unsigned int *timeleft, struct score *score);
/* Can we do something about it? (NULL if not) */
void (*handle)(struct manifest *m, struct score *score);
/* Internal use fields: */
/* We are a node in a dependency graph. */
struct dgraph_node node;
- /* Are we targeted? */
- bool should_run;
/* Did we skip a dependency? If so, must skip this, too. */
const char *skip;
- /* Did we fail a dependency? If so, skip and mark as fail. */
- bool skip_fail;
- /* Did the user want to keep these results? */
- bool keep_results;
+ /* Have we already run this? */
+ bool done;
};
/* Ask the user a yes/no question: the answer is NO if there's an error. */
/* Are we happy to compile stuff, or just non-intrusive tests? */
extern bool safe_mode;
+/* Did the user want to keep all the results? */
+extern bool keep_results;
+
/* Where is the ccan dir? Available after first manifest. */
extern const char *ccan_dir;