test/test_list.c

changeset 455
8168e16cd1e9
parent 453
bb144d08cd44
child 456
227c2eabbef8
     1.1 --- a/test/test_list.c	Sun Oct 03 15:40:38 2021 +0200
     1.2 +++ b/test/test_list.c	Sun Oct 03 16:02:53 2021 +0200
     1.3 @@ -35,33 +35,6 @@
     1.4      return left == right ? 0 : (left < right ? -1 : 1);
     1.5  }
     1.6  
     1.7 -void test_linked_list_create(void) {
     1.8 -    cxTestingAllocatorReset();
     1.9 -
    1.10 -    CxList list = cxLinkedListCreate(cxTestingAllocator, (CxListComparator) cmp_int, sizeof(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(int))
    1.16 -    CU_ASSERT_PTR_EQUAL(list->cmpfunc, cmp_int)
    1.17 -
    1.18 -    // assume this structure for a linked list
    1.19 -    struct ll_check {
    1.20 -        cx_list_s base;
    1.21 -        void *begin;
    1.22 -        void *end;
    1.23 -    };
    1.24 -
    1.25 -    struct ll_check *actual = (struct ll_check *) list;
    1.26 -    CU_ASSERT_PTR_NULL(actual->begin)
    1.27 -    CU_ASSERT_PTR_NULL(actual->end)
    1.28 -
    1.29 -    cxLinkedListDestroy(list);
    1.30 -
    1.31 -    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.32 -}
    1.33 -
    1.34  void test_linked_list_at(void) {
    1.35      struct node {
    1.36          void *next;
    1.37 @@ -154,6 +127,34 @@
    1.38      CU_ASSERT_PTR_NULL(nodes[1].prev)
    1.39  }
    1.40  
    1.41 +
    1.42 +void test_linked_list_create(void) {
    1.43 +    cxTestingAllocatorReset();
    1.44 +
    1.45 +    CxList list = cxLinkedListCreate(cxTestingAllocator, (CxListComparator) cmp_int, sizeof(int));
    1.46 +
    1.47 +    CU_ASSERT_EQUAL(list->size, 0)
    1.48 +    CU_ASSERT_EQUAL(list->capacity, (size_t) -1)
    1.49 +    CU_ASSERT_PTR_EQUAL(list->allocator, cxTestingAllocator)
    1.50 +    CU_ASSERT_EQUAL(list->itemsize, sizeof(int))
    1.51 +    CU_ASSERT_PTR_EQUAL(list->cmpfunc, cmp_int)
    1.52 +
    1.53 +    // assume this structure for a linked list
    1.54 +    struct ll_check {
    1.55 +        cx_list_s base;
    1.56 +        void *begin;
    1.57 +        void *end;
    1.58 +    };
    1.59 +
    1.60 +    struct ll_check *actual = (struct ll_check *) list;
    1.61 +    CU_ASSERT_PTR_NULL(actual->begin)
    1.62 +    CU_ASSERT_PTR_NULL(actual->end)
    1.63 +
    1.64 +    cxLinkedListDestroy(list);
    1.65 +
    1.66 +    CU_ASSERT_TRUE(cxTestingAllocatorVerify())
    1.67 +}
    1.68 +
    1.69  int main() {
    1.70      CU_pSuite suite = NULL;
    1.71  
    1.72 @@ -161,11 +162,14 @@
    1.73          return CU_get_error();
    1.74      }
    1.75  
    1.76 -    suite = CU_add_suite("linked list suite", NULL, NULL);
    1.77 +    suite = CU_add_suite("low level linked list suite", NULL, NULL);
    1.78  
    1.79 -    CU_add_test(suite, "linked list: create and destroy", test_linked_list_create);
    1.80 -    CU_add_test(suite, "linked list: get node at index", test_linked_list_at);
    1.81 -    CU_add_test(suite, "linked list: add", test_linked_list_add);
    1.82 +    cu_add_test(suite, test_linked_list_at);
    1.83 +    cu_add_test(suite, test_linked_list_add);
    1.84 +
    1.85 +    suite = CU_add_suite("high level linked list suite", NULL, NULL);
    1.86 +
    1.87 +    cu_add_test(suite, test_linked_list_create);
    1.88  
    1.89      CU_basic_set_mode(UCX_CU_BRM);
    1.90  

mercurial