diff options
Diffstat (limited to 'tests/lib')
-rw-r--r-- | tests/lib/list-test.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/tests/lib/list-test.c b/tests/lib/list-test.c index 309346abec..39bfb17f7c 100644 --- a/tests/lib/list-test.c +++ b/tests/lib/list-test.c @@ -116,12 +116,32 @@ void test_list_remove(void **state) free(c1); } +void test_list_append(void **state) +{ + size_t idx; + struct test_container *node; + struct list_node root = {}; + struct test_container nodes[] = { + {1}, {2}, {3} + }; + + for (idx = 0; idx < ARRAY_SIZE(nodes); ++idx) + list_append(&nodes[idx].list_node, &root); + + idx = 0; + list_for_each(node, root, list_node) { + assert_ptr_equal(node, &nodes[idx]); + idx++; + } +} + int main(void) { const struct CMUnitTest tests[] = { cmocka_unit_test(test_list_insert_after), cmocka_unit_test(test_list_insert_before), cmocka_unit_test(test_list_remove), + cmocka_unit_test(test_list_append), }; |