From 502f1733e320b1339beafa949a41db3027c46ec6 Mon Sep 17 00:00:00 2001 From: Zbigniew Jędrzejewski-Szmek Date: Fri, 9 Jan 2015 13:34:01 -0500 Subject: shared/list: add LIST_APPEND --- src/test/test-list.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'src/test') diff --git a/src/test/test-list.c b/src/test/test-list.c index fa52ad1db8..e9d47f0503 100644 --- a/src/test/test-list.c +++ b/src/test/test-list.c @@ -105,5 +105,29 @@ int main(int argc, const char *argv[]) { LIST_REMOVE(item, head, &items[3]); assert_se(LIST_JUST_US(item, &items[3])); + assert_se(head == NULL); + + for (i = 0; i < ELEMENTSOF(items); i++) { + assert_se(LIST_JUST_US(item, &items[i])); + LIST_APPEND(item, head, &items[i]); + } + + assert_se(!LIST_JUST_US(item, head)); + + assert_se(items[0].item_next == &items[1]); + assert_se(items[1].item_next == &items[2]); + assert_se(items[2].item_next == &items[3]); + assert_se(items[3].item_next == NULL); + + assert_se(items[0].item_prev == NULL); + assert_se(items[1].item_prev == &items[0]); + assert_se(items[2].item_prev == &items[1]); + assert_se(items[3].item_prev == &items[2]); + + for (i = 0; i < ELEMENTSOF(items); i++) + LIST_REMOVE(item, head, &items[i]); + + assert_se(head == NULL); + return 0; } -- cgit v1.2.3-54-g00ecf