1.1 --- a/tests/test_list.cpp Mon Mar 20 19:09:08 2023 +0100 1.2 +++ b/tests/test_list.cpp Tue Mar 21 17:18:29 2023 +0100 1.3 @@ -587,8 +587,7 @@ 1.4 } 1.5 1.6 auto pointerLinkedListFromTestData() const -> CxList * { 1.7 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.8 - cxListStorePointers(list); 1.9 + auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS)); 1.10 // note: cannot use cxListAddArray() because we don't have a list of pointers 1.11 cx_for_n(i, testdata_len) cxListAdd(list, &testdata.data[i]); 1.12 return list; 1.13 @@ -933,6 +932,12 @@ 1.14 EXPECT_NE(list->cl, nullptr); 1.15 EXPECT_EQ(list->climpl, nullptr); 1.16 EXPECT_FALSE(cxListIsStoringPointers(list)); 1.17 + 1.18 + list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS)); 1.19 + EXPECT_EQ(list->itemsize, sizeof(void *)); 1.20 + EXPECT_NE(list->cl, nullptr); 1.21 + EXPECT_NE(list->climpl, nullptr); 1.22 + EXPECT_TRUE(cxListIsStoringPointers(list)); 1.23 } 1.24 1.25 TEST_F(LinkedList, cxLinkedListCreate) { 1.26 @@ -975,8 +980,7 @@ 1.27 } 1.28 1.29 TEST_F(PointerLinkedList, cxListAdd) { 1.30 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.31 - cxListStorePointers(list); 1.32 + auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS)); 1.33 verifyAdd(list, true); 1.34 } 1.35 1.36 @@ -990,9 +994,7 @@ 1.37 } 1.38 1.39 TEST_F(PointerLinkedList, cxListInsert) { 1.40 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.41 - cxListStorePointers(list); 1.42 - verifyInsert(list); 1.43 + verifyInsert(autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS))); 1.44 } 1.45 1.46 TEST_F(ArrayList, cxListInsert) { 1.47 @@ -1004,9 +1006,7 @@ 1.48 } 1.49 1.50 TEST_F(PointerLinkedList, cxListInsertArray) { 1.51 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.52 - cxListStorePointers(list); 1.53 - verifyInsertArray(list, true); 1.54 + verifyInsertArray(autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS)), true); 1.55 } 1.56 1.57 TEST_F(ArrayList, cxListInsertArray) { 1.58 @@ -1030,9 +1030,7 @@ 1.59 } 1.60 1.61 TEST_F(PointerLinkedList, cxListClear) { 1.62 - auto l = cxLinkedListCreateSimple(sizeof(testdatastruct)); 1.63 - cxListStorePointers(l); 1.64 - verifyClear(autofree(l)); 1.65 + verifyClear(cxLinkedListCreateSimple(CX_STORE_POINTERS)); 1.66 } 1.67 1.68 TEST_F(ArrayList, cxListClear) { 1.69 @@ -1044,9 +1042,7 @@ 1.70 } 1.71 1.72 TEST_F(PointerLinkedList, cxListSwap) { 1.73 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.74 - cxListStorePointers(list); 1.75 - verifySwap(list); 1.76 + verifySwap(autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS))); 1.77 } 1.78 1.79 TEST_F(ArrayList, cxListSwap) { 1.80 @@ -1060,10 +1056,8 @@ 1.81 } 1.82 1.83 TEST_F(PointerLinkedList, cxListSwapNoSBO) { 1.84 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.85 - cxListStorePointers(list); 1.86 CX_DISABLE_LINKED_LIST_SWAP_SBO = true; 1.87 - verifySwap(list); 1.88 + verifySwap(autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS))); 1.89 CX_DISABLE_LINKED_LIST_SWAP_SBO = false; 1.90 } 1.91 1.92 @@ -1130,8 +1124,7 @@ 1.93 1.94 TEST_F(PointerLinkedList, InsertViaIterator) { 1.95 int fivenums[] = {0, 1, 2, 3, 4, 5}; 1.96 - auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int *))); 1.97 - cxListStorePointers(list); 1.98 + auto list = autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, CX_STORE_POINTERS)); 1.99 // note: cannot use cxListAddArray() because we don't have a list of pointers 1.100 cx_for_n(i, 5) cxListAdd(list, &fivenums[i]); 1.101 verifyInsertViaIterator(list); 1.102 @@ -1139,7 +1132,7 @@ 1.103 1.104 TEST_F(ArrayList, InsertViaIterator) { 1.105 int fivenums[] = {0, 1, 2, 3, 4, 5}; 1.106 - CxList *list = autofree(cxArrayListCreate(&testingAllocator, cx_cmp_int, sizeof(int), 4)); 1.107 + auto list = autofree(cxArrayListCreate(&testingAllocator, cx_cmp_int, sizeof(int), 4)); 1.108 cxListAddArray(list, fivenums, 5); 1.109 verifyInsertViaIterator(list); 1.110 } 1.111 @@ -1212,8 +1205,7 @@ 1.112 1.113 TEST_F(PointerLinkedList, NoDestructor) { 1.114 void *item = cxMalloc(&testingAllocator, sizeof(int)); 1.115 - auto list = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_int, sizeof(int *)); 1.116 - cxListStorePointers(list); 1.117 + auto list = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_int, CX_STORE_POINTERS); 1.118 cxListAdd(list, item); 1.119 ASSERT_FALSE(testingAllocator.verify()); 1.120 cxListDestroy(list); 1.121 @@ -1224,8 +1216,7 @@ 1.122 1.123 TEST_F(PointerLinkedList, SimpleDestructor) { 1.124 int item = 0; 1.125 - auto list = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_int, sizeof(int *)); 1.126 - cxListStorePointers(list); 1.127 + auto list = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_int, CX_STORE_POINTERS); 1.128 list->content_destructor_type = CX_DESTRUCTOR_SIMPLE; 1.129 list->simple_destructor = [](void *elem) { *(int *) elem = 42; }; 1.130 cxListAdd(list, &item); 1.131 @@ -1235,8 +1226,7 @@ 1.132 1.133 TEST_F(PointerLinkedList, AdvancedDestructor) { 1.134 void *item = cxMalloc(&testingAllocator, sizeof(int)); 1.135 - auto list = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_int, sizeof(int *)); 1.136 - cxListStorePointers(list); 1.137 + auto list = cxLinkedListCreate(cxDefaultAllocator, cx_cmp_int, CX_STORE_POINTERS); 1.138 list->content_destructor_type = CX_DESTRUCTOR_ADVANCED; 1.139 list->advanced_destructor.data = &testingAllocator; 1.140 list->advanced_destructor.func = (cx_destructor_func2) cxFree;