add failing test case for inserting into kv-list via map default tip

Sun, 31 Aug 2025 13:37:00 +0200

author
Mike Becker <universe@uap-core.de>
date
Sun, 31 Aug 2025 13:37:00 +0200
changeset 1357
cb25a4a12edd
parent 1356
0ffcccb83b69

add failing test case for inserting into kv-list via map

relates to #461

tests/test_kv_list.c file | annotate | diff | comparison | revisions
tests/ucxtest.c file | annotate | diff | comparison | revisions
--- a/tests/test_kv_list.c	Sat Aug 30 13:37:00 2025 +0200
+++ b/tests/test_kv_list.c	Sun Aug 31 13:37:00 2025 +0200
@@ -42,10 +42,34 @@
     cxListFree(list);
 }
 
+CX_TEST(test_kv_list_map_put) {
+    CxList *list = cxKvListCreateSimple(sizeof(int));
+    int x;
+    CX_TEST_DO {
+        CxMap *map = cxKvListAsMap(list);
+
+        x = 13;
+        CX_TEST_ASSERT(0 == cxMapPut(map, "xyz", &x));
+
+        x = 37;
+        CX_TEST_ASSERT(0 == cxMapPut(map, "abc", &x));
+
+        CX_TEST_ASSERT(cxMapSize(map) == 2);
+        CX_TEST_ASSERT(*(int*)cxMapGet(map, "xyz") == 13);
+        CX_TEST_ASSERT(*(int*)cxMapGet(map, "abc") == 37);
+
+        CX_TEST_ASSERT(cxListSize(list) == 2);
+        CX_TEST_ASSERT(*(int*)cxListAt(list, 0) == 13);
+        CX_TEST_ASSERT(*(int*)cxListAt(list, 1) == 37);
+    }
+    cxListFree(list);
+}
+
 CxTestSuite *cx_test_suite_kv_list_specifics(void) {
     CxTestSuite *suite = cx_test_suite_new("kv_list specifics");
 
     cx_test_register(suite, test_kv_list_map_as_list);
+    cx_test_register(suite, test_kv_list_map_put);
 
     return suite;
 }
--- a/tests/ucxtest.c	Sat Aug 30 13:37:00 2025 +0200
+++ b/tests/ucxtest.c	Sun Aug 31 13:37:00 2025 +0200
@@ -47,6 +47,7 @@
 CxTestSuite *cx_test_suite_linked_list(void);
 CxTestSuite *cx_test_suite_linked_list_defaulted_funcs(void);
 CxTestSuite *cx_test_suite_kv_list(void);
+CxTestSuite *cx_test_suite_kv_list_specifics(void);
 CxTestSuite *cx_test_suite_tree_low_level(void);
 CxTestSuite *cx_test_suite_tree_high_level(void);
 CxTestSuite *cx_test_suite_properties(void);
@@ -99,6 +100,7 @@
             cx_test_suite_linked_list(),
             cx_test_suite_linked_list_defaulted_funcs(),
             cx_test_suite_kv_list(),
+            cx_test_suite_kv_list_specifics(),
             cx_test_suite_tree_low_level(),
             cx_test_suite_tree_high_level(),
             cx_test_suite_properties(),

mercurial