t-reftable-merged: add test for REFTABLE_FORMAT_ERROR
When calling reftable_new_merged_table(), if the hash ID of the passed reftable_table parameter doesn't match the passed hash_id parameter, a REFTABLE_FORMAT_ERROR is thrown. This case is currently left unexercised, so add a test for the same. 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>
Chandra Pratap committed
Jul 12, 2024 at 11:09 UTC
9a1fb8af9887c99420f41a36667e4a7905d6266b
1 file changed
+3
t/unit-tests/t-reftable-merged.c
+3
@@ -11,6 +11,7 @@ https://developers.google.com/open-source/licenses/bsd
11
#include "reftable/constants.h"
12
#include "reftable/merged.h"
13
#include "reftable/reader.h"
14
+#include "reftable/reftable-error.h"
15
#include "reftable/reftable-generic.h"
16
#include "reftable/reftable-merged.h"
17
#include "reftable/reftable-writer.h"
@@ -440,6 +441,8 @@ static void t_default_write_opts(void)
441
check_int(hash_id, ==, GIT_SHA1_FORMAT_ID);
442
443
reftable_table_from_reader(&tab[0], rd);
444
+ err = reftable_new_merged_table(&merged, tab, 1, GIT_SHA256_FORMAT_ID);
445
+ check_int(err, ==, REFTABLE_FORMAT_ERROR);
446
err = reftable_new_merged_table(&merged, tab, 1, GIT_SHA1_FORMAT_ID);
447
check(!err);
448