test/test_list.c

changeset 479
a29bdd703e02
parent 478
599770bb6314
child 482
0d998f19d130
equal deleted inserted replaced
478:599770bb6314 479:a29bdd703e02
570 570
571 cxLinkedListDestroy(list); 571 cxLinkedListDestroy(list);
572 CU_ASSERT_TRUE(cxTestingAllocatorVerify()) 572 CU_ASSERT_TRUE(cxTestingAllocatorVerify())
573 } 573 }
574 574
575 void test_hl_linked_list_at(void) {
576 cxTestingAllocatorReset();
577
578 CxList list = cxLinkedListCreate(cxTestingAllocator, (CxListComparator) cmp_int, sizeof(int));
579
580 int data;
581 data = 5;
582 cxListAdd(list, &data);
583 data = 47;
584 cxListAdd(list, &data);
585 data = 13;
586 cxListAdd(list, &data);
587
588 CU_ASSERT_EQUAL(*(int*)cxListAt(list, 0), 5)
589 CU_ASSERT_EQUAL(*(int*)cxListAt(list, 1), 47)
590 CU_ASSERT_EQUAL(*(int*)cxListAt(list, 2), 13)
591 CU_ASSERT_PTR_NULL(cxListAt(list, 3))
592
593 cxLinkedListDestroy(list);
594 CU_ASSERT_TRUE(cxTestingAllocatorVerify())
595 }
596
575 void test_hl_linked_list_find(void) { 597 void test_hl_linked_list_find(void) {
576 cxTestingAllocatorReset(); 598 cxTestingAllocatorReset();
577 599
578 int data, criteria; 600 int data, criteria;
579 CxList list = cxLinkedListCreate(cxTestingAllocator, (CxListComparator) cmp_int, sizeof(int)); 601 CxList list = cxLinkedListCreate(cxTestingAllocator, (CxListComparator) cmp_int, sizeof(int));
750 CU_ASSERT_EQUAL(cxListRemove(list, 0), 0) 772 CU_ASSERT_EQUAL(cxListRemove(list, 0), 0)
751 CU_ASSERT_EQUAL(list->size, 0) 773 CU_ASSERT_EQUAL(list->size, 0)
752 CU_ASSERT_TRUE(list->capacity >= list->size) 774 CU_ASSERT_TRUE(list->capacity >= list->size)
753 775
754 CU_ASSERT_NOT_EQUAL(cxListRemove(list, 0), 0) 776 CU_ASSERT_NOT_EQUAL(cxListRemove(list, 0), 0)
777
778 cxLinkedListDestroy(list);
779 CU_ASSERT_TRUE(cxTestingAllocatorVerify())
780 }
781
782 void test_hl_ptr_linked_list_at(void) {
783 cxTestingAllocatorReset();
784
785 CxList list = cxPointerLinkedListCreate(cxTestingAllocator, (CxListComparator) cmp_int);
786
787 int a = 5, b = 47, c = 13;
788 cxListAdd(list, &a);
789 cxListAdd(list, &b);
790 cxListAdd(list, &c);
791
792 CU_ASSERT_EQUAL(*(int*)cxListAt(list, 0), 5)
793 CU_ASSERT_EQUAL(*(int*)cxListAt(list, 1), 47)
794 CU_ASSERT_EQUAL(*(int*)cxListAt(list, 2), 13)
795 CU_ASSERT_PTR_NULL(cxListAt(list, 3))
755 796
756 cxLinkedListDestroy(list); 797 cxLinkedListDestroy(list);
757 CU_ASSERT_TRUE(cxTestingAllocatorVerify()) 798 CU_ASSERT_TRUE(cxTestingAllocatorVerify())
758 } 799 }
759 800
847 888
848 cu_add_test(suite, test_hl_linked_list_create); 889 cu_add_test(suite, test_hl_linked_list_create);
849 cu_add_test(suite, test_hl_linked_list_add); 890 cu_add_test(suite, test_hl_linked_list_add);
850 cu_add_test(suite, test_hl_linked_list_insert); 891 cu_add_test(suite, test_hl_linked_list_insert);
851 cu_add_test(suite, test_hl_linked_list_remove); 892 cu_add_test(suite, test_hl_linked_list_remove);
893 cu_add_test(suite, test_hl_linked_list_at);
852 cu_add_test(suite, test_hl_linked_list_find); 894 cu_add_test(suite, test_hl_linked_list_find);
853 cu_add_test(suite, test_hl_linked_list_sort); 895 cu_add_test(suite, test_hl_linked_list_sort);
854 896
855 suite = CU_add_suite("high level pointer linked list", NULL, NULL); 897 suite = CU_add_suite("high level pointer linked list", NULL, NULL);
856 898
857 cu_add_test(suite, test_hl_ptr_linked_list_create); 899 cu_add_test(suite, test_hl_ptr_linked_list_create);
858 cu_add_test(suite, test_hl_ptr_linked_list_add); 900 cu_add_test(suite, test_hl_ptr_linked_list_add);
859 cu_add_test(suite, test_hl_ptr_linked_list_insert); 901 cu_add_test(suite, test_hl_ptr_linked_list_insert);
860 cu_add_test(suite, test_hl_ptr_linked_list_remove); 902 cu_add_test(suite, test_hl_ptr_linked_list_remove);
903 cu_add_test(suite, test_hl_ptr_linked_list_at);
861 cu_add_test(suite, test_hl_ptr_linked_list_find); 904 cu_add_test(suite, test_hl_ptr_linked_list_find);
862 cu_add_test(suite, test_hl_ptr_linked_list_sort); 905 cu_add_test(suite, test_hl_ptr_linked_list_sort);
863 906
864 CU_basic_set_mode(UCX_CU_BRM); 907 CU_basic_set_mode(UCX_CU_BRM);
865 908

mercurial