reorder the list test functions

Sat, 29 Jan 2022 12:46:07 +0100

author
Mike Becker <universe@uap-core.de>
date
Sat, 29 Jan 2022 12:46:07 +0100
changeset 498
435c9965b2dd
parent 497
b182a8b8a1af
child 499
3dc9075df822

reorder the list test functions

This should make it easier to spot duplicated code and think about a
strategy to uniformly test "normal" linked lists and pointer lists.

test/test_list.c file | annotate | diff | comparison | revisions
     1.1 --- a/test/test_list.c	Sat Jan 22 19:10:04 2022 +0100
     1.2 +++ b/test/test_list.c	Sat Jan 29 12:46:07 2022 +0100
     1.3 @@ -572,6 +572,21 @@
     1.4      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
     1.5  }
     1.6  
     1.7 +void test_hl_ptr_linked_list_create(void) {
     1.8 +    cxTestingAllocatorReset();
     1.9 +
    1.10 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
    1.11 +
    1.12 +    CU_ASSERT_EQUAL(list->size, 0)
    1.13 +    CU_ASSERT_EQUAL(list->capacity, (size_t) -1)
    1.14 +    CU_ASSERT_PTR_EQUAL(list->allocator, cxTestingAllocator)
    1.15 +    CU_ASSERT_EQUAL(list->itemsize, sizeof(void *))
    1.16 +    CU_ASSERT_PTR_EQUAL(list->cmpfunc, cmp_int)
    1.17 +
    1.18 +    cxLinkedListDestroy(list);
    1.19 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.20 +}
    1.21 +
    1.22  void test_hl_linked_list_from_array(void) {
    1.23      cxTestingAllocatorReset();
    1.24  
    1.25 @@ -614,6 +629,36 @@
    1.26      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.27  }
    1.28  
    1.29 +void test_hl_ptr_linked_list_add(void) {
    1.30 +    cxTestingAllocatorReset();
    1.31 +
    1.32 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
    1.33 +
    1.34 +    int a = 5, b = 47, c = 13;
    1.35 +
    1.36 +    CU_ASSERT_EQUAL(cxListAdd(list, &a), 0)
    1.37 +    CU_ASSERT_EQUAL(cxListAdd(list, &b), 0)
    1.38 +    CU_ASSERT_EQUAL(cxListAdd(list, &c), 0)
    1.39 +
    1.40 +    CU_ASSERT_EQUAL(list->size, 3)
    1.41 +    CU_ASSERT_TRUE(list->capacity >= list->size)
    1.42 +
    1.43 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 5)
    1.44 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 47)
    1.45 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 13)
    1.46 +
    1.47 +    a = 9;
    1.48 +    b = 10;
    1.49 +    c = 11;
    1.50 +
    1.51 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 9)
    1.52 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 10)
    1.53 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 11)
    1.54 +
    1.55 +    cxLinkedListDestroy(list);
    1.56 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.57 +}
    1.58 +
    1.59  void test_hl_linked_list_insert(void) {
    1.60      cxTestingAllocatorReset();
    1.61  
    1.62 @@ -646,6 +691,35 @@
    1.63      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.64  }
    1.65  
    1.66 +void test_hl_ptr_linked_list_insert(void) {
    1.67 +    cxTestingAllocatorReset();
    1.68 +
    1.69 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
    1.70 +
    1.71 +    int a = 5, b = 47, c = 13, d = 42;
    1.72 +
    1.73 +    CU_ASSERT_NOT_EQUAL(cxListInsert(list, 1, &a), 0)
    1.74 +    CU_ASSERT_EQUAL(list->size, 0)
    1.75 +    CU_ASSERT_EQUAL(cxListInsert(list, 0, &a), 0)
    1.76 +    CU_ASSERT_EQUAL(list->size, 1)
    1.77 +    CU_ASSERT_EQUAL(cxListInsert(list, 0, &b), 0)
    1.78 +    CU_ASSERT_EQUAL(list->size, 2)
    1.79 +    CU_ASSERT_EQUAL(cxListInsert(list, 1, &c), 0)
    1.80 +    CU_ASSERT_EQUAL(list->size, 3)
    1.81 +    CU_ASSERT_EQUAL(cxListInsert(list, 3, &d), 0)
    1.82 +
    1.83 +    CU_ASSERT_EQUAL(list->size, 4)
    1.84 +    CU_ASSERT_TRUE(list->capacity >= list->size)
    1.85 +
    1.86 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 47)
    1.87 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 13)
    1.88 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 5)
    1.89 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 3), 42)
    1.90 +
    1.91 +    cxLinkedListDestroy(list);
    1.92 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.93 +}
    1.94 +
    1.95  void test_hl_linked_list_remove(void) {
    1.96      cxTestingAllocatorReset();
    1.97  
    1.98 @@ -686,6 +760,50 @@
    1.99      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.100  }
   1.101  
   1.102 +void test_hl_ptr_linked_list_remove(void) {
   1.103 +    cxTestingAllocatorReset();
   1.104 +
   1.105 +    int a = 5, b = 47, c = 42, d = 13;
   1.106 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.107 +
   1.108 +    cxListAdd(list, &a);
   1.109 +    cxListAdd(list, &b);
   1.110 +    cxListAdd(list, &c);
   1.111 +    cxListAdd(list, &d);
   1.112 +
   1.113 +    CU_ASSERT_EQUAL(list->size, 4)
   1.114 +    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.115 +
   1.116 +    CU_ASSERT_NOT_EQUAL(cxListRemove(list, 4), 0)
   1.117 +
   1.118 +    CU_ASSERT_EQUAL(cxListRemove(list, 2), 0)
   1.119 +    CU_ASSERT_EQUAL(list->size, 3)
   1.120 +    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.121 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 5)
   1.122 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 47)
   1.123 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 13)
   1.124 +
   1.125 +    CU_ASSERT_EQUAL(cxListRemove(list, 0), 0)
   1.126 +    CU_ASSERT_EQUAL(list->size, 2)
   1.127 +    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.128 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 47)
   1.129 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 13)
   1.130 +
   1.131 +    CU_ASSERT_EQUAL(cxListRemove(list, 1), 0)
   1.132 +    CU_ASSERT_EQUAL(list->size, 1)
   1.133 +    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.134 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 47)
   1.135 +
   1.136 +    CU_ASSERT_EQUAL(cxListRemove(list, 0), 0)
   1.137 +    CU_ASSERT_EQUAL(list->size, 0)
   1.138 +    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.139 +
   1.140 +    CU_ASSERT_NOT_EQUAL(cxListRemove(list, 0), 0)
   1.141 +
   1.142 +    cxLinkedListDestroy(list);
   1.143 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.144 +}
   1.145 +
   1.146  void test_hl_linked_list_at(void) {
   1.147      cxTestingAllocatorReset();
   1.148  
   1.149 @@ -702,6 +820,25 @@
   1.150      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.151  }
   1.152  
   1.153 +void test_hl_ptr_linked_list_at(void) {
   1.154 +    cxTestingAllocatorReset();
   1.155 +
   1.156 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.157 +
   1.158 +    int a = 5, b = 47, c = 13;
   1.159 +    cxListAdd(list, &a);
   1.160 +    cxListAdd(list, &b);
   1.161 +    cxListAdd(list, &c);
   1.162 +
   1.163 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 5)
   1.164 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 47)
   1.165 +    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 13)
   1.166 +    CU_ASSERT_PTR_NULL(cxListAt(list, 3))
   1.167 +
   1.168 +    cxLinkedListDestroy(list);
   1.169 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.170 +}
   1.171 +
   1.172  void test_hl_linked_list_find(void) {
   1.173      cxTestingAllocatorReset();
   1.174  
   1.175 @@ -728,6 +865,36 @@
   1.176      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.177  }
   1.178  
   1.179 +void test_hl_ptr_linked_list_find(void) {
   1.180 +    cxTestingAllocatorReset();
   1.181 +
   1.182 +    int a = 5, b = 47, c = 13, criteria;
   1.183 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.184 +
   1.185 +    cxListAdd(list, &a);
   1.186 +    cxListAdd(list, &b);
   1.187 +    cxListAdd(list, &c);
   1.188 +
   1.189 +    CU_ASSERT_EQUAL(list->size, 3)
   1.190 +    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.191 +
   1.192 +    criteria = 5;
   1.193 +    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 0)
   1.194 +    criteria = 47;
   1.195 +    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 1)
   1.196 +    criteria = 13;
   1.197 +    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 2)
   1.198 +    criteria = 9000;
   1.199 +    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 3)
   1.200 +    criteria = -5;
   1.201 +    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 3)
   1.202 +    b = -5;
   1.203 +    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 1)
   1.204 +
   1.205 +    cxLinkedListDestroy(list);
   1.206 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.207 +}
   1.208 +
   1.209  void test_hl_linked_list_sort(void) {
   1.210      int expected[] = {
   1.211              14, 30, 151, 163, 227, 300, 315, 317, 363, 398, 417, 424, 438, 446, 508, 555, 605, 713, 716, 759, 761, 880,
   1.212 @@ -759,6 +926,42 @@
   1.213      CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.214  }
   1.215  
   1.216 +void test_hl_ptr_linked_list_sort(void) {
   1.217 +    int expected[] = {
   1.218 +            14, 30, 151, 163, 227, 300, 315, 317, 363, 398, 417, 424, 438, 446, 508, 555, 605, 713, 716, 759, 761, 880,
   1.219 +            894, 1034, 1077, 1191, 1231, 1264, 1297, 1409, 1423, 1511, 1544, 1659, 1686, 1707, 1734, 1771, 1874, 1894,
   1.220 +            1976, 2079, 2124, 2130, 2135, 2266, 2338, 2358, 2430, 2500, 2540, 2542, 2546, 2711, 2733, 2754, 2764, 2797,
   1.221 +            2888, 2900, 3020, 3053, 3109, 3244, 3275, 3302, 3362, 3363, 3364, 3441, 3515, 3539, 3579, 3655, 3675, 3677,
   1.222 +            3718, 3724, 3757, 3866, 3896, 3906, 3941, 3984, 3994, 4016, 4085, 4121, 4254, 4319, 4366, 4459, 4514, 4681,
   1.223 +            4785, 4791, 4801, 4859, 4903, 4973
   1.224 +    };
   1.225 +    int scrambled[] = {
   1.226 +            759, 716, 880, 761, 2358, 2542, 2500, 2540, 2546, 2711, 2430, 1707, 1874, 1771, 1894, 1734, 1976, 2079,
   1.227 +            2124, 2130, 2135, 2266, 2338, 2733, 2754, 2764, 2797, 3362, 3363, 3364, 3441, 3515, 3539, 3579, 3655, 2888,
   1.228 +            2900, 3020, 3053, 3109, 3244, 3275, 3302, 438, 446, 508, 555, 605, 713, 14, 30, 151, 163, 227, 300,
   1.229 +            894, 1034, 1077, 1191, 1231, 1264, 1297, 1409, 1423, 1511, 1544, 1659, 1686, 315, 317, 363, 398, 417, 424,
   1.230 +            3675, 3677, 3718, 3724, 3757, 3866, 3896, 3906, 3941, 3984, 3994, 4785, 4791, 4801, 4859, 4903, 4973,
   1.231 +            4016, 4085, 4121, 4254, 4319, 4366, 4459, 4514, 4681
   1.232 +    };
   1.233 +
   1.234 +    cxTestingAllocatorReset();
   1.235 +
   1.236 +    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.237 +
   1.238 +    for (int i = 0; i < 100; i++) {
   1.239 +        cxListAdd(list, &scrambled[i]);
   1.240 +    }
   1.241 +
   1.242 +    cxListSort(list);
   1.243 +
   1.244 +    for (int i = 0; i < 100; i++) {
   1.245 +        CU_ASSERT_EQUAL(*(int *) cxListAt(list, i), expected[i])
   1.246 +    }
   1.247 +
   1.248 +    cxLinkedListDestroy(list);
   1.249 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.250 +}
   1.251 +
   1.252  void test_hl_linked_list_iterator_impl(CxList list) {
   1.253      int i = 0;
   1.254      CxIterator iter = cxListBegin(list);
   1.255 @@ -798,209 +1001,6 @@
   1.256      test_hl_linked_list_iterator_impl(list);
   1.257  }
   1.258  
   1.259 -void test_hl_ptr_linked_list_create(void) {
   1.260 -    cxTestingAllocatorReset();
   1.261 -
   1.262 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.263 -
   1.264 -    CU_ASSERT_EQUAL(list->size, 0)
   1.265 -    CU_ASSERT_EQUAL(list->capacity, (size_t) -1)
   1.266 -    CU_ASSERT_PTR_EQUAL(list->allocator, cxTestingAllocator)
   1.267 -    CU_ASSERT_EQUAL(list->itemsize, sizeof(void *))
   1.268 -    CU_ASSERT_PTR_EQUAL(list->cmpfunc, cmp_int)
   1.269 -
   1.270 -    cxLinkedListDestroy(list);
   1.271 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.272 -}
   1.273 -
   1.274 -void test_hl_ptr_linked_list_add(void) {
   1.275 -    cxTestingAllocatorReset();
   1.276 -
   1.277 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.278 -
   1.279 -    int a = 5, b = 47, c = 13;
   1.280 -
   1.281 -    CU_ASSERT_EQUAL(cxListAdd(list, &a), 0)
   1.282 -    CU_ASSERT_EQUAL(cxListAdd(list, &b), 0)
   1.283 -    CU_ASSERT_EQUAL(cxListAdd(list, &c), 0)
   1.284 -
   1.285 -    CU_ASSERT_EQUAL(list->size, 3)
   1.286 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.287 -
   1.288 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 5)
   1.289 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 47)
   1.290 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 13)
   1.291 -
   1.292 -    a = 9;
   1.293 -    b = 10;
   1.294 -    c = 11;
   1.295 -
   1.296 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 9)
   1.297 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 10)
   1.298 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 11)
   1.299 -
   1.300 -    cxLinkedListDestroy(list);
   1.301 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.302 -}
   1.303 -
   1.304 -void test_hl_ptr_linked_list_insert(void) {
   1.305 -    cxTestingAllocatorReset();
   1.306 -
   1.307 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.308 -
   1.309 -    int a = 5, b = 47, c = 13, d = 42;
   1.310 -
   1.311 -    CU_ASSERT_NOT_EQUAL(cxListInsert(list, 1, &a), 0)
   1.312 -    CU_ASSERT_EQUAL(list->size, 0)
   1.313 -    CU_ASSERT_EQUAL(cxListInsert(list, 0, &a), 0)
   1.314 -    CU_ASSERT_EQUAL(list->size, 1)
   1.315 -    CU_ASSERT_EQUAL(cxListInsert(list, 0, &b), 0)
   1.316 -    CU_ASSERT_EQUAL(list->size, 2)
   1.317 -    CU_ASSERT_EQUAL(cxListInsert(list, 1, &c), 0)
   1.318 -    CU_ASSERT_EQUAL(list->size, 3)
   1.319 -    CU_ASSERT_EQUAL(cxListInsert(list, 3, &d), 0)
   1.320 -
   1.321 -    CU_ASSERT_EQUAL(list->size, 4)
   1.322 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.323 -
   1.324 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 47)
   1.325 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 13)
   1.326 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 5)
   1.327 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 3), 42)
   1.328 -
   1.329 -    cxLinkedListDestroy(list);
   1.330 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.331 -}
   1.332 -
   1.333 -void test_hl_ptr_linked_list_remove(void) {
   1.334 -    cxTestingAllocatorReset();
   1.335 -
   1.336 -    int a = 5, b = 47, c = 42, d = 13;
   1.337 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.338 -
   1.339 -    cxListAdd(list, &a);
   1.340 -    cxListAdd(list, &b);
   1.341 -    cxListAdd(list, &c);
   1.342 -    cxListAdd(list, &d);
   1.343 -
   1.344 -    CU_ASSERT_EQUAL(list->size, 4)
   1.345 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.346 -
   1.347 -    CU_ASSERT_NOT_EQUAL(cxListRemove(list, 4), 0)
   1.348 -
   1.349 -    CU_ASSERT_EQUAL(cxListRemove(list, 2), 0)
   1.350 -    CU_ASSERT_EQUAL(list->size, 3)
   1.351 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.352 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 5)
   1.353 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 47)
   1.354 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 13)
   1.355 -
   1.356 -    CU_ASSERT_EQUAL(cxListRemove(list, 0), 0)
   1.357 -    CU_ASSERT_EQUAL(list->size, 2)
   1.358 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.359 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 47)
   1.360 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 13)
   1.361 -
   1.362 -    CU_ASSERT_EQUAL(cxListRemove(list, 1), 0)
   1.363 -    CU_ASSERT_EQUAL(list->size, 1)
   1.364 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.365 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 47)
   1.366 -
   1.367 -    CU_ASSERT_EQUAL(cxListRemove(list, 0), 0)
   1.368 -    CU_ASSERT_EQUAL(list->size, 0)
   1.369 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.370 -
   1.371 -    CU_ASSERT_NOT_EQUAL(cxListRemove(list, 0), 0)
   1.372 -
   1.373 -    cxLinkedListDestroy(list);
   1.374 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.375 -}
   1.376 -
   1.377 -void test_hl_ptr_linked_list_at(void) {
   1.378 -    cxTestingAllocatorReset();
   1.379 -
   1.380 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.381 -
   1.382 -    int a = 5, b = 47, c = 13;
   1.383 -    cxListAdd(list, &a);
   1.384 -    cxListAdd(list, &b);
   1.385 -    cxListAdd(list, &c);
   1.386 -
   1.387 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 0), 5)
   1.388 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 1), 47)
   1.389 -    CU_ASSERT_EQUAL(*(int *) cxListAt(list, 2), 13)
   1.390 -    CU_ASSERT_PTR_NULL(cxListAt(list, 3))
   1.391 -
   1.392 -    cxLinkedListDestroy(list);
   1.393 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.394 -}
   1.395 -
   1.396 -void test_hl_ptr_linked_list_find(void) {
   1.397 -    cxTestingAllocatorReset();
   1.398 -
   1.399 -    int a = 5, b = 47, c = 13, criteria;
   1.400 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.401 -
   1.402 -    cxListAdd(list, &a);
   1.403 -    cxListAdd(list, &b);
   1.404 -    cxListAdd(list, &c);
   1.405 -
   1.406 -    CU_ASSERT_EQUAL(list->size, 3)
   1.407 -    CU_ASSERT_TRUE(list->capacity >= list->size)
   1.408 -
   1.409 -    criteria = 5;
   1.410 -    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 0)
   1.411 -    criteria = 47;
   1.412 -    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 1)
   1.413 -    criteria = 13;
   1.414 -    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 2)
   1.415 -    criteria = 9000;
   1.416 -    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 3)
   1.417 -    criteria = -5;
   1.418 -    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 3)
   1.419 -    b = -5;
   1.420 -    CU_ASSERT_EQUAL(cxListFind(list, &criteria), 1)
   1.421 -
   1.422 -    cxLinkedListDestroy(list);
   1.423 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.424 -}
   1.425 -
   1.426 -void test_hl_ptr_linked_list_sort(void) {
   1.427 -    int expected[] = {
   1.428 -            14, 30, 151, 163, 227, 300, 315, 317, 363, 398, 417, 424, 438, 446, 508, 555, 605, 713, 716, 759, 761, 880,
   1.429 -            894, 1034, 1077, 1191, 1231, 1264, 1297, 1409, 1423, 1511, 1544, 1659, 1686, 1707, 1734, 1771, 1874, 1894,
   1.430 -            1976, 2079, 2124, 2130, 2135, 2266, 2338, 2358, 2430, 2500, 2540, 2542, 2546, 2711, 2733, 2754, 2764, 2797,
   1.431 -            2888, 2900, 3020, 3053, 3109, 3244, 3275, 3302, 3362, 3363, 3364, 3441, 3515, 3539, 3579, 3655, 3675, 3677,
   1.432 -            3718, 3724, 3757, 3866, 3896, 3906, 3941, 3984, 3994, 4016, 4085, 4121, 4254, 4319, 4366, 4459, 4514, 4681,
   1.433 -            4785, 4791, 4801, 4859, 4903, 4973
   1.434 -    };
   1.435 -    int scrambled[] = {
   1.436 -            759, 716, 880, 761, 2358, 2542, 2500, 2540, 2546, 2711, 2430, 1707, 1874, 1771, 1894, 1734, 1976, 2079,
   1.437 -            2124, 2130, 2135, 2266, 2338, 2733, 2754, 2764, 2797, 3362, 3363, 3364, 3441, 3515, 3539, 3579, 3655, 2888,
   1.438 -            2900, 3020, 3053, 3109, 3244, 3275, 3302, 438, 446, 508, 555, 605, 713, 14, 30, 151, 163, 227, 300,
   1.439 -            894, 1034, 1077, 1191, 1231, 1264, 1297, 1409, 1423, 1511, 1544, 1659, 1686, 315, 317, 363, 398, 417, 424,
   1.440 -            3675, 3677, 3718, 3724, 3757, 3866, 3896, 3906, 3941, 3984, 3994, 4785, 4791, 4801, 4859, 4903, 4973,
   1.441 -            4016, 4085, 4121, 4254, 4319, 4366, 4459, 4514, 4681
   1.442 -    };
   1.443 -
   1.444 -    cxTestingAllocatorReset();
   1.445 -
   1.446 -    CxList list = cxPointerLinkedListCreate(cxTestingAllocator, cmp_int);
   1.447 -
   1.448 -    for (int i = 0; i < 100; i++) {
   1.449 -        cxListAdd(list, &scrambled[i]);
   1.450 -    }
   1.451 -
   1.452 -    cxListSort(list);
   1.453 -
   1.454 -    for (int i = 0; i < 100; i++) {
   1.455 -        CU_ASSERT_EQUAL(*(int *) cxListAt(list, i), expected[i])
   1.456 -    }
   1.457 -
   1.458 -    cxLinkedListDestroy(list);
   1.459 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
   1.460 -}
   1.461 -
   1.462  int main() {
   1.463      CU_pSuite suite = NULL;
   1.464  

mercurial