summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChandra Pratap <chandrapratap3519@gmail.com>2024-07-12 11:08:59 +0530
committerJunio C Hamano <gitster@pobox.com>2024-07-12 09:55:40 -0700
commitc755c2f3519075028047b092dd26706ac75d1aff (patch)
tree09251306e506969789668de00297cfabd4194a12
parente8ed7d1974af3d38e7c6f2ad07fd4ea49ae29474 (diff)
t-reftable-merged: improve the test t_merged_single_record()
In t-reftable-merged.c, the test t_merged_single_record() ensures that a ref ('a') which occurs in only one of the records ('r2') can be retrieved. Improve this test by adding another record 'r3' to ensure that ref 'a' only occurs in 'r2' and that merged tables don't simply read the last record. 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>
-rw-r--r--t/unit-tests/t-reftable-merged.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/t/unit-tests/t-reftable-merged.c b/t/unit-tests/t-reftable-merged.c
index 9791f53418..f4c14c5d47 100644
--- a/t/unit-tests/t-reftable-merged.c
+++ b/t/unit-tests/t-reftable-merged.c
@@ -136,14 +136,19 @@ static void t_merged_single_record(void)
.update_index = 2,
.value_type = REFTABLE_REF_DELETION,
} };
+ struct reftable_ref_record r3[] = { {
+ .refname = (char *) "c",
+ .update_index = 3,
+ .value_type = REFTABLE_REF_DELETION,
+ } };
- struct reftable_ref_record *refs[] = { r1, r2 };
- size_t sizes[] = { ARRAY_SIZE(r1), ARRAY_SIZE(r2) };
- struct strbuf bufs[2] = { STRBUF_INIT, STRBUF_INIT };
+ struct reftable_ref_record *refs[] = { r1, r2, r3 };
+ size_t sizes[] = { ARRAY_SIZE(r1), ARRAY_SIZE(r2), ARRAY_SIZE(r3) };
+ struct strbuf bufs[3] = { STRBUF_INIT, STRBUF_INIT, STRBUF_INIT };
struct reftable_block_source *bs = NULL;
struct reftable_reader **readers = NULL;
struct reftable_merged_table *mt =
- merged_table_from_records(refs, &bs, &readers, sizes, bufs, 2);
+ merged_table_from_records(refs, &bs, &readers, sizes, bufs, 3);
struct reftable_ref_record ref = { 0 };
struct reftable_iterator it = { 0 };
int err;
@@ -157,7 +162,7 @@ static void t_merged_single_record(void)
check_int(ref.update_index, ==, 2);
reftable_ref_record_release(&ref);
reftable_iterator_destroy(&it);
- readers_destroy(readers, 2);
+ readers_destroy(readers, 3);
reftable_merged_table_free(mt);
for (size_t i = 0; i < ARRAY_SIZE(bufs); i++)
strbuf_release(&bufs[i]);