From 3d57d355364c7d99b1cca0896ef6120f7778ed93 Mon Sep 17 00:00:00 2001 From: Patrick Pelissier Date: Sun, 25 Feb 2018 11:52:14 +0100 Subject: [PATCH] Update test --- tests/test-mlist.c | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/tests/test-mlist.c b/tests/test-mlist.c index 2b3a090f..c8596e50 100644 --- a/tests/test-mlist.c +++ b/tests/test-mlist.c @@ -490,7 +490,37 @@ static void test_dual_it1(void) assert (d == 1024.0); assert(*list2_double_back(list) == 0.0); assert(*list2_double_front(list) == 1023.0); + + list2_double_t list2; + list2_double_init_set(list2, list); + + // Splice back the back of list + list2_double_it(it, list); + list2_double_splice_back(list2, list, it); + assert(*list2_double_back(list) == 1.0); + assert(*list2_double_cref(it) == 1.0); + list2_double_it(it2, list2); + assert(*list2_double_cref(it2) == 0.0); + list2_double_next(it2); + assert(*list2_double_cref(it2) == 0.0); + list2_double_next(it2); + assert(*list2_double_cref(it2) == 1.0); + + // Splice back an element of list + list2_double_next(it); + list2_double_splice_back(list2, list, it); + assert(*list2_double_back(list) == 1.0); + assert(*list2_double_cref(it) == 3.0); + list2_double_it(it2, list2); + assert(*list2_double_cref(it2) == 2.0); + list2_double_next(it2); + assert(*list2_double_cref(it2) == 0.0); + list2_double_next(it2); + assert(*list2_double_cref(it2) == 0.0); + list2_double_next(it2); + assert(*list2_double_cref(it2) == 1.0); + list2_double_clear(list2); list2_double_clear(list); }