ccanlint: Add -k option to keep results.
[ccan] / tools / ccanlint / tests / has_info_documentation.c
index 8a506aba85253596975462dd1532038d30d6e79c..2823e66b6700b10536838234604761c316f4ef96 100644 (file)
@@ -1,5 +1,6 @@
 #include <tools/ccanlint/ccanlint.h>
 #include <tools/doc_extract.h>
+#include <tools/tools.h>
 #include <sys/types.h>
 #include <sys/stat.h>
 #include <fcntl.h>
@@ -21,7 +22,9 @@ struct info_docs
        bool example;
 };
 
-static void *check_has_info_documentation(struct manifest *m)
+static void *check_has_info_documentation(struct manifest *m,
+                                         bool keep,
+                                         unsigned int *timeleft)
 {
        struct list_head *infodocs = get_ccan_file_docs(m->info_file);
        struct doc_section *d;
@@ -81,7 +84,7 @@ static void create_info_template_doc(struct manifest *m, void *check_result)
                unlink_noerr("_info.new");
                err(1, "Closing _info.new");
        }
-       if (rename("_info.new", "_info") != 0) {
+       if (!move_file("_info.new", "_info")) {
                unlink_noerr("_info.new");
                err(1, "Renaming _info.new to _info");
        }
@@ -122,9 +125,12 @@ static unsigned int has_info_documentation_score(struct manifest *m,
 }
 
 struct ccanlint has_info_documentation = {
-       .name = "Documentation in _info file",
+       .key = "info-documentation",
+       .name = "Module has documentation in _info",
        .total_score = 3,
        .score = has_info_documentation_score,
        .check = check_has_info_documentation,
        .describe = describe_has_info_documentation,
 };
+
+REGISTER_TEST(has_info_documentation, NULL);