X-Git-Url: https://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=src%2Fjournal%2Ftest-journal.c;h=ff9dc9e1700fd1ea3c4e83899fb411d90277233b;hb=ab31f6b8713d43354c3716ee4c37fe4460db9254;hp=534fd28fa69a54e5c3472512667069af74a773a8;hpb=6eb7a9a0010d035e5bdbbf70227088ce02b2120e;p=elogind.git diff --git a/src/journal/test-journal.c b/src/journal/test-journal.c index 534fd28fa..ff9dc9e17 100644 --- a/src/journal/test-journal.c +++ b/src/journal/test-journal.c @@ -22,7 +22,7 @@ #include #include -#include +#include "systemd/sd-journal.h" #include "log.h" #include "journal-file.h" @@ -66,55 +66,55 @@ static void test_non_empty(void) { #endif journal_file_dump(f); - assert(journal_file_next_entry(f, NULL, 0, DIRECTION_DOWN, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 1); + assert_se(journal_file_next_entry(f, NULL, 0, DIRECTION_DOWN, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 1); - assert(journal_file_next_entry(f, o, p, DIRECTION_DOWN, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 2); + assert_se(journal_file_next_entry(f, o, p, DIRECTION_DOWN, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 2); - assert(journal_file_next_entry(f, o, p, DIRECTION_DOWN, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 3); + assert_se(journal_file_next_entry(f, o, p, DIRECTION_DOWN, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 3); - assert(journal_file_next_entry(f, o, p, DIRECTION_DOWN, &o, &p) == 0); + assert_se(journal_file_next_entry(f, o, p, DIRECTION_DOWN, &o, &p) == 0); - assert(journal_file_next_entry(f, NULL, 0, DIRECTION_DOWN, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 1); + assert_se(journal_file_next_entry(f, NULL, 0, DIRECTION_DOWN, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 1); - assert(journal_file_skip_entry(f, o, p, 2, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 3); + assert_se(journal_file_skip_entry(f, o, p, 2, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 3); - assert(journal_file_skip_entry(f, o, p, -2, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 1); + assert_se(journal_file_skip_entry(f, o, p, -2, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 1); - assert(journal_file_skip_entry(f, o, p, -2, &o, &p) == 1); - assert(le64toh(o->entry.seqnum) == 1); + assert_se(journal_file_skip_entry(f, o, p, -2, &o, &p) == 1); + assert_se(le64toh(o->entry.seqnum) == 1); - assert(journal_file_find_data_object(f, test, strlen(test), NULL, &p) == 1); - assert(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_DOWN, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 1); + assert_se(journal_file_find_data_object(f, test, strlen(test), NULL, &p) == 1); + assert_se(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_DOWN, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 1); - assert(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_UP, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 3); + assert_se(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_UP, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 3); - assert(journal_file_find_data_object(f, test2, strlen(test2), NULL, &p) == 1); - assert(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_UP, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 2); + assert_se(journal_file_find_data_object(f, test2, strlen(test2), NULL, &p) == 1); + assert_se(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_UP, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 2); - assert(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_DOWN, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 2); + assert_se(journal_file_next_entry_for_data(f, NULL, 0, p, DIRECTION_DOWN, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 2); - assert(journal_file_find_data_object(f, "quux", 4, NULL, &p) == 0); + assert_se(journal_file_find_data_object(f, "quux", 4, NULL, &p) == 0); - assert(journal_file_move_to_entry_by_seqnum(f, 1, DIRECTION_DOWN, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 1); + assert_se(journal_file_move_to_entry_by_seqnum(f, 1, DIRECTION_DOWN, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 1); - assert(journal_file_move_to_entry_by_seqnum(f, 3, DIRECTION_DOWN, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 3); + assert_se(journal_file_move_to_entry_by_seqnum(f, 3, DIRECTION_DOWN, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 3); - assert(journal_file_move_to_entry_by_seqnum(f, 2, DIRECTION_DOWN, &o, NULL) == 1); - assert(le64toh(o->entry.seqnum) == 2); + assert_se(journal_file_move_to_entry_by_seqnum(f, 2, DIRECTION_DOWN, &o, NULL) == 1); + assert_se(le64toh(o->entry.seqnum) == 2); - assert(journal_file_move_to_entry_by_seqnum(f, 10, DIRECTION_DOWN, &o, NULL) == 0); + assert_se(journal_file_move_to_entry_by_seqnum(f, 10, DIRECTION_DOWN, &o, NULL) == 0); journal_file_rotate(&f, true, true); journal_file_rotate(&f, true, true); @@ -126,7 +126,7 @@ static void test_non_empty(void) { if (arg_keep) log_info("Not removing %s", t); else { - journal_directory_vacuum(".", 3000000, 0, 0, NULL); + journal_directory_vacuum(".", 3000000, 0, NULL, true); assert_se(rm_rf_dangerous(t, false, true, false) >= 0); } @@ -165,15 +165,24 @@ static void test_empty(void) { if (arg_keep) log_info("Not removing %s", t); else { - journal_directory_vacuum(".", 3000000, 0, 0, NULL); + journal_directory_vacuum(".", 3000000, 0, NULL, true); assert_se(rm_rf_dangerous(t, false, true, false) >= 0); } + + journal_file_close(f1); + journal_file_close(f2); + journal_file_close(f3); + journal_file_close(f4); } int main(int argc, char *argv[]) { arg_keep = argc > 1; + /* journal_file_open requires a valid machine id */ + if (access("/etc/machine-id", F_OK) != 0) + return EXIT_TEST_SKIP; + test_non_empty(); test_empty();