From 6735baad4ec9d8dd5961380bea6f2be1cdbfaabf Mon Sep 17 00:00:00 2001 From: Vandra-Meyer Akos Date: Fri, 26 Jun 2026 08:42:56 +0200 Subject: [PATCH] test(translation): cover NULL-argument checks in lv_translation Add test_null_arguments_are_rejected exercising the LV_CHECK_ARG NULL guards in lv_translation_add_language, lv_translation_get_language_index, lv_translation_add_tag and lv_translation_set_tag_translation. --- tests/src/test_cases/test_translation.c | 26 +++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/tests/src/test_cases/test_translation.c b/tests/src/test_cases/test_translation.c index 78c93fe21f..25cc8ee8a5 100644 --- a/tests/src/test_cases/test_translation.c +++ b/tests/src/test_cases/test_translation.c @@ -49,4 +49,30 @@ void test_set_language_sends_language_changed_event(void) TEST_ASSERT_EQUAL_STRING(lv_label_get_text(label), "tiger"); } +void test_null_arguments_are_rejected(void) +{ + lv_translation_pack_t * pack = lv_translation_add_dynamic(); + TEST_ASSERT_NOT_NULL(pack); + + /* lv_translation_add_language */ + TEST_ASSERT_EQUAL(LV_RESULT_INVALID, lv_translation_add_language(NULL, "en")); + TEST_ASSERT_EQUAL(LV_RESULT_INVALID, lv_translation_add_language(pack, NULL)); + TEST_ASSERT_EQUAL(LV_RESULT_OK, lv_translation_add_language(pack, "en")); + + /* lv_translation_get_language_index */ + TEST_ASSERT_EQUAL(-1, lv_translation_get_language_index(NULL, "en")); + TEST_ASSERT_EQUAL(-1, lv_translation_get_language_index(pack, NULL)); + + /* lv_translation_add_tag */ + TEST_ASSERT_NULL(lv_translation_add_tag(NULL, "tiger")); + TEST_ASSERT_NULL(lv_translation_add_tag(pack, NULL)); + lv_translation_tag_dsc_t * tag = lv_translation_add_tag(pack, "tiger"); + TEST_ASSERT_NOT_NULL(tag); + + /* lv_translation_set_tag_translation */ + TEST_ASSERT_EQUAL(LV_RESULT_INVALID, lv_translation_set_tag_translation(NULL, tag, 0, "The Tiger")); + TEST_ASSERT_EQUAL(LV_RESULT_INVALID, lv_translation_set_tag_translation(pack, NULL, 0, "The Tiger")); + TEST_ASSERT_EQUAL(LV_RESULT_INVALID, lv_translation_set_tag_translation(pack, tag, 0, NULL)); +} + #endif