]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t: move tests from reftable/stack_test.c to the new unit test
authorChandra Pratap <chandrapratap3519@gmail.com>
Wed, 29 May 2024 16:59:28 +0000 (22:29 +0530)
committerJunio C Hamano <gitster@pobox.com>
Thu, 30 May 2024 14:30:10 +0000 (07:30 -0700)
parse_names() and names_equal() are functions defined in
reftable/basics.{c, h}. Move the tests for these functions from
reftable/stack_test.c to the newly ported test.

Mentored-by: Patrick Steinhardt <ps@pks.im>
Mentored-by: Christian Couder <chriscool@tuxfamily.org>
Signed-off-by: Chandra Pratap <chandrapratap3519@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
reftable/stack_test.c
t/unit-tests/t-reftable-basics.c

index 1df3ffce5261f2cf63c3719198e0e2d71df13bb8..3c3adbdd3903a21a6ce6a29cb90739651cb1ac8c 100644 (file)
@@ -102,29 +102,6 @@ static void test_read_file(void)
        (void) remove(fn);
 }
 
-static void test_parse_names(void)
-{
-       char buf[] = "line\n";
-       char **names = NULL;
-       parse_names(buf, strlen(buf), &names);
-
-       EXPECT(NULL != names[0]);
-       EXPECT(0 == strcmp(names[0], "line"));
-       EXPECT(NULL == names[1]);
-       free_names(names);
-}
-
-static void test_names_equal(void)
-{
-       char *a[] = { "a", "b", "c", NULL };
-       char *b[] = { "a", "b", "d", NULL };
-       char *c[] = { "a", "b", NULL };
-
-       EXPECT(names_equal(a, a));
-       EXPECT(!names_equal(a, b));
-       EXPECT(!names_equal(a, c));
-}
-
 static int write_test_ref(struct reftable_writer *wr, void *arg)
 {
        struct reftable_ref_record *ref = arg;
@@ -1086,8 +1063,6 @@ static void test_reftable_stack_compaction_concurrent_clean(void)
 int stack_test_main(int argc, const char *argv[])
 {
        RUN_TEST(test_empty_add);
-       RUN_TEST(test_names_equal);
-       RUN_TEST(test_parse_names);
        RUN_TEST(test_read_file);
        RUN_TEST(test_reflog_expire);
        RUN_TEST(test_reftable_stack_add);
index 99e6c891200ec5e9ca7e2e82288971dd1c9945bb..55fcff12d9c4471751bf3bcb15ae46a08aa9ad79 100644 (file)
@@ -58,14 +58,32 @@ static void test_names_length(void)
        check_int(names_length(a), ==, 2);
 }
 
+static void test_names_equal(void)
+{
+       char *a[] = { "a", "b", "c", NULL };
+       char *b[] = { "a", "b", "d", NULL };
+       char *c[] = { "a", "b", NULL };
+
+       check(names_equal(a, a));
+       check(!names_equal(a, b));
+       check(!names_equal(a, c));
+}
+
 static void test_parse_names_normal(void)
 {
-       char in[] = "a\nb\n";
+       char in1[] = "line\n";
+       char in2[] = "a\nb\nc";
        char **out = NULL;
-       parse_names(in, strlen(in), &out);
+       parse_names(in1, strlen(in1), &out);
+       check_str(out[0], "line");
+       check(!out[1]);
+       free_names(out);
+
+       parse_names(in2, strlen(in2), &out);
        check_str(out[0], "a");
        check_str(out[1], "b");
-       check(!out[2]);
+       check_str(out[2], "c");
+       check(!out[3]);
        free_names(out);
 }
 
@@ -97,6 +115,7 @@ int cmd_main(int argc, const char *argv[])
        TEST(test_parse_names_drop_empty(), "parse_names drops empty string");
        TEST(test_binsearch(), "binary search with binsearch works");
        TEST(test_names_length(), "names_length retuns size of a NULL-terminated string array");
+       TEST(test_names_equal(), "names_equal compares NULL-terminated string arrays");
 
        return test_done();
 }