]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
test: add more testcases for seeking journal entries
authorYu Watanabe <watanabe.yu+github@gmail.com>
Tue, 19 Sep 2023 20:37:39 +0000 (05:37 +0900)
committerYu Watanabe <watanabe.yu+github@gmail.com>
Wed, 20 Sep 2023 16:58:43 +0000 (01:58 +0900)
This is mostly for issue #29216.

src/journal/test-journal-interleaving.c

index 263963315e9b0e150124f737aa56d5dad30a7a55..8dcdaecc65b7705ccd596e0580dc4d49b88c4bbe 100644 (file)
@@ -185,6 +185,15 @@ static void test_skip_one(void (*setup)(void)) {
         test_check_numbers_down(j, 9);
         sd_journal_close(j);
 
+        /* Seek to head twice, iterate down. */
+        assert_ret(sd_journal_open_directory(&j, t, 0));
+        assert_ret(sd_journal_seek_head(j));
+        assert_se(sd_journal_next(j) == 1);     /* pointing to the first entry */
+        assert_ret(sd_journal_seek_head(j));
+        assert_se(sd_journal_next(j) == 1);     /* pointing to the first entry */
+        test_check_numbers_down(j, 9);
+        sd_journal_close(j);
+
         /* Seek to head, move to previous, then iterate down. */
         assert_ret(sd_journal_open_directory(&j, t, 0));
         assert_ret(sd_journal_seek_head(j));
@@ -212,6 +221,16 @@ static void test_skip_one(void (*setup)(void)) {
         test_check_numbers_up(j, 9);
         sd_journal_close(j);
 
+        /* Seek to tail twice, iterate up. */
+        assert_ret(sd_journal_open_directory(&j, t, 0));
+        assert_ret(sd_journal_seek_tail(j));
+        assert_se(sd_journal_previous(j) == 1); /* pointing to the last entry */
+        // FIXME: the below does not work. See issue #29216.
+        //assert_ret(sd_journal_seek_tail(j));
+        //assert_se(sd_journal_previous(j) == 1); /* pointing to the last entry */
+        test_check_numbers_up(j, 9);
+        sd_journal_close(j);
+
         /* Seek to tail, move to next, then iterate up. */
         assert_ret(sd_journal_open_directory(&j, t, 0));
         assert_ret(sd_journal_seek_tail(j));