From 114a6e8d599a5319ea8fb454168752a5a0f48e2b Mon Sep 17 00:00:00 2001
From: Dominik Loidolt <dominik.loidolt@univie.ac.at>
Date: Thu, 9 Nov 2023 17:47:15 +0100
Subject: [PATCH] Increase test coverage for cmp_ent_write_cmp_pars() function

---
 lib/common/cmp_entity.c | 2 --
 test/decmp/test_decmp.c | 6 ++++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/lib/common/cmp_entity.c b/lib/common/cmp_entity.c
index f79e8cf..5ee24e9 100644
--- a/lib/common/cmp_entity.c
+++ b/lib/common/cmp_entity.c
@@ -2131,8 +2131,6 @@ uint32_t cmp_ent_build(struct cmp_entity *ent, uint32_t version_id,
 	}
 
 	hdr_size = cmp_ent_cal_hdr_size(cfg->data_type, cfg->cmp_mode == CMP_MODE_RAW);
-	if (!hdr_size)
-		return 0;
 
 	return hdr_size + cmp_size_bytes;
 }
diff --git a/test/decmp/test_decmp.c b/test/decmp/test_decmp.c
index 5696c5b..3eff35c 100644
--- a/test/decmp/test_decmp.c
+++ b/test/decmp/test_decmp.c
@@ -1311,7 +1311,7 @@ void test_cmp_ent_write_cmp_pars(void)
 	cfg.ap1_golomb_par = 14;
 	cfg.ap2_spill = 333;
 	cfg.ap2_golomb_par = 43;
-	cfg.max_used_bits = cmp_max_used_bits_list_get(42);
+	cfg.max_used_bits = NULL; /* no max_used_bits is set */
 
 	/* create a compression entity */
 	size = cmp_ent_create(NULL, cfg.data_type, cfg.cmp_mode == CMP_MODE_RAW, 12);
@@ -1330,7 +1330,8 @@ void test_cmp_ent_write_cmp_pars(void)
 	TEST_ASSERT_EQUAL_INT(cmp_cal_size_of_data(cfg.samples, cfg.data_type), cmp_ent_get_original_size(ent));
 	TEST_ASSERT_EQUAL_INT(cfg.cmp_mode, cmp_ent_get_cmp_mode(ent));
 	TEST_ASSERT_EQUAL_INT(cfg.model_value, cmp_ent_get_model_value(ent));
-	TEST_ASSERT_EQUAL_INT(max_used_bits.version, cmp_ent_get_max_used_bits_version(ent));
+	/* zero is expected when max_used_bits = NULL */
+	TEST_ASSERT_EQUAL_INT(0, cmp_ent_get_max_used_bits_version(ent));
 	TEST_ASSERT_EQUAL_INT(cfg.round, cmp_ent_get_lossy_cmp_par(ent));
 
 	TEST_ASSERT_EQUAL_INT(cfg.spill, cmp_ent_get_ima_spill(ent));
@@ -1344,6 +1345,7 @@ void test_cmp_ent_write_cmp_pars(void)
 	TEST_ASSERT_FALSE(error);
 	cfg.icu_output_buf = cmp_ent_get_data_buf(ent); /* quick fix that both cfg are equal */
 	cfg.buffer_length = 12; /* quick fix that both cfg are equal */
+	cfg.max_used_bits = &MAX_USED_BITS_SAFE;
 	TEST_ASSERT_EQUAL_MEMORY(&cfg, &cfg_read, sizeof(struct cmp_cfg));
 
 	free(ent);
-- 
GitLab