diff --git a/test/cmp_data_types/meson.build b/test/cmp_data_types/meson.build new file mode 100644 index 0000000000000000000000000000000000000000..8de2ef86510c269ed1c3888c806c0a630133ec1c --- /dev/null +++ b/test/cmp_data_types/meson.build @@ -0,0 +1,12 @@ +test_case = files('test_cmp_data_types.c') +test_runner = test_runner_generator.process(test_case) + +test_cmp_icu = executable('test_cmp_data_types', + test_case, test_runner, + include_directories : incdir, + link_with : cmp_lib, + dependencies : unity_dep, + build_by_default : false +) + +test('Compression Data Types Unit Tests', test_cmp_icu) diff --git a/test/cmp_data_types/test_cmp_data_types.c b/test/cmp_data_types/test_cmp_data_types.c new file mode 100644 index 0000000000000000000000000000000000000000..881f46a250f904a1fab14a685b7c2b315fc5553b --- /dev/null +++ b/test/cmp_data_types/test_cmp_data_types.c @@ -0,0 +1,26 @@ +#include <stdint.h> + +#include "unity.h" +#include "cmp_data_types.h" + +/** + * @test cmp_cal_size_of_data + */ + +void test_cmp_cal_size_of_data(void) +{ + unsigned int s; + + s = cmp_cal_size_of_data(1, DATA_TYPE_IMAGETTE); + TEST_ASSERT_EQUAL_UINT(sizeof(uint16_t), s); + + s = cmp_cal_size_of_data(1, DATA_TYPE_F_FX); + TEST_ASSERT_EQUAL_UINT(sizeof(struct f_fx)+MULTI_ENTRY_HDR_SIZE, s); + + /* overflow tests */ + s = cmp_cal_size_of_data(0x1999999A, DATA_TYPE_BACKGROUND); + TEST_ASSERT_EQUAL_UINT(0, s); + s = cmp_cal_size_of_data(0x19999999, DATA_TYPE_BACKGROUND); + TEST_ASSERT_EQUAL_UINT(0, s); +} +