]> git.ipfire.org Git - thirdparty/git.git/commitdiff
t-reftable-record: add ref tests for reftable_record_is_deletion()
authorChandra Pratap <chandrapratap3519@gmail.com>
Tue, 2 Jul 2024 07:22:19 +0000 (12:52 +0530)
committerJunio C Hamano <gitster@pobox.com>
Tue, 2 Jul 2024 15:12:25 +0000 (08:12 -0700)
reftable_record_is_deletion() is a function defined in
reftable/record.{c, h} that determines whether a record is of
type deletion or not. In the current testing setup, this function
is left untested for all the four record types (ref, log, obj, index).

Add tests for this function in the case of ref records.

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

index 46614de948147e2bfeaafff4bf111965513a9163..170c804825ca6b6410f84df46e8b3f24048d0344 100644 (file)
@@ -102,6 +102,7 @@ static void t_reftable_ref_record_roundtrip(void)
        for (int i = REFTABLE_REF_DELETION; i < REFTABLE_NR_REF_VALUETYPES; i++) {
                struct reftable_record in = {
                        .type = BLOCK_TYPE_REF,
+                       .u.ref.value_type = i,
                };
                struct reftable_record out = { .type = BLOCK_TYPE_REF };
                struct strbuf key = STRBUF_INIT;
@@ -132,6 +133,7 @@ static void t_reftable_ref_record_roundtrip(void)
                t_copy(&in);
 
                check_int(reftable_record_val_type(&in), ==, i);
+               check_int(reftable_record_is_deletion(&in), ==, i == REFTABLE_REF_DELETION);
 
                reftable_record_key(&in, &key);
                n = reftable_record_encode(&in, dest, GIT_SHA1_RAWSZ);