tests/test_list.c

changeset 1428
0ac4aa1737fd
parent 1423
9a72258446cd
child 1429
6e0c3a8a914a
equal deleted inserted replaced
1427:943bfd9e7978 1428:0ac4aa1737fd
1812 for (size_t i = 0; i < 19; i++) { 1812 for (size_t i = 0; i < 19; i++) {
1813 CX_TEST_ASSERT(*(int *) cxListAt(list, i) == expected[i]); 1813 CX_TEST_ASSERT(*(int *) cxListAt(list, i) == expected[i]);
1814 } 1814 }
1815 }) 1815 })
1816 1816
1817 roll_out_test_combos_with_defaulted_funcs(insert_unique_not_sorted, {
1818 int d1 = 50;
1819 int d2 = 80;
1820 int d3 = 60;
1821 int d4 = 40;
1822 int d5 = 70;
1823 int d6a[6] = array_init(52, 54, 56, 62, 64, 75);
1824 int d7a[6] = array_init(51, 57, 58, 65, 77, 78);
1825 int d8 = 90;
1826 int d9 = 56;
1827 int d10a[3] = array_init(67, 75, 90);
1828 int *d6ptr[6];
1829 int *d7ptr[6];
1830 int *d10ptr[3];
1831 for (size_t i = 0; i < 6; i++) {
1832 d6ptr[i] = &d6a[i];
1833 d7ptr[i] = &d7a[i];
1834 }
1835 for (size_t i = 0 ; i < 3 ; i++) {
1836 d10ptr[i] = &d10a[i];
1837 }
1838 size_t inserted;
1839 int expected[19] = array_init(
1840 50, 80, 60, 40, 70, 52, 54, 56, 62, 64,
1841 75, 51, 57, 58, 65, 77, 78, 90, 67
1842 );
1843
1844 // begin with an unsorted list!
1845 CX_TEST_ASSERT(0 == cxListAdd(list, &d1));
1846 CX_TEST_ASSERT(0 == cxListAdd(list, &d2));
1847 CX_TEST_ASSERT(0 == cxListAdd(list, &d3));
1848 CX_TEST_ASSERT(0 == cxListAdd(list, &d4));
1849
1850 // not start adding unique items
1851 CX_TEST_ASSERT(0 == cxListInsertUnique(list, &d5));
1852 if (isptrlist) {
1853 inserted = cxListInsertUniqueArray(list, d6ptr, 6);
1854 } else {
1855 inserted = cxListInsertUniqueArray(list, d6a, 6);
1856 }
1857 CX_TEST_ASSERT(inserted == 6);
1858 if (isptrlist) {
1859 inserted = cxListInsertUniqueArray(list, d7ptr, 6);
1860 } else {
1861 inserted = cxListInsertUniqueArray(list, d7a, 6);
1862 }
1863 CX_TEST_ASSERT(inserted == 6);
1864 CX_TEST_ASSERT(0 == cxListInsertUnique(list, &d8));
1865 CX_TEST_ASSERT(0 == cxListInsertUnique(list, &d9));
1866 if (isptrlist) {
1867 inserted = cxListInsertUniqueArray(list, d10ptr, 3);
1868 } else {
1869 inserted = cxListInsertUniqueArray(list, d10a, 3);
1870 }
1871 CX_TEST_ASSERT(inserted == 3);
1872 CX_TEST_ASSERT(cxListSize(list) == 19);
1873 for (size_t i = 0; i < 19; i++) {
1874 CX_TEST_ASSERT(*(int *) cxListAt(list, i) == expected[i]);
1875 }
1876 })
1877
1817 roll_out_test_combos(remove, { 1878 roll_out_test_combos(remove, {
1818 const size_t testdata_len = 32; 1879 const size_t testdata_len = 32;
1819 int *testdata = int_test_data_added_to_list(list, isptrlist, testdata_len); 1880 int *testdata = int_test_data_added_to_list(list, isptrlist, testdata_len);
1820 1881
1821 CX_TEST_ASSERT(cxListRemove(list, 2) == 0); 1882 CX_TEST_ASSERT(cxListRemove(list, 2) == 0);
2552 cx_test_register(suite, test_list_parl_insert_array); 2613 cx_test_register(suite, test_list_parl_insert_array);
2553 cx_test_register(suite, test_list_arl_insert_sorted); 2614 cx_test_register(suite, test_list_arl_insert_sorted);
2554 cx_test_register(suite, test_list_parl_insert_sorted); 2615 cx_test_register(suite, test_list_parl_insert_sorted);
2555 cx_test_register(suite, test_list_arl_insert_unique); 2616 cx_test_register(suite, test_list_arl_insert_unique);
2556 cx_test_register(suite, test_list_parl_insert_unique); 2617 cx_test_register(suite, test_list_parl_insert_unique);
2618 cx_test_register(suite, test_list_arl_insert_unique_not_sorted);
2619 cx_test_register(suite, test_list_parl_insert_unique_not_sorted);
2557 cx_test_register(suite, test_list_arl_remove); 2620 cx_test_register(suite, test_list_arl_remove);
2558 cx_test_register(suite, test_list_parl_remove); 2621 cx_test_register(suite, test_list_parl_remove);
2559 cx_test_register(suite, test_list_arl_remove_and_get); 2622 cx_test_register(suite, test_list_arl_remove_and_get);
2560 cx_test_register(suite, test_list_parl_remove_and_get); 2623 cx_test_register(suite, test_list_parl_remove_and_get);
2561 cx_test_register(suite, test_list_arl_remove_array); 2624 cx_test_register(suite, test_list_arl_remove_array);
2609 cx_test_register(suite, test_list_parlm_insert_array); 2672 cx_test_register(suite, test_list_parlm_insert_array);
2610 cx_test_register(suite, test_list_arlm_insert_sorted); 2673 cx_test_register(suite, test_list_arlm_insert_sorted);
2611 cx_test_register(suite, test_list_parlm_insert_sorted); 2674 cx_test_register(suite, test_list_parlm_insert_sorted);
2612 cx_test_register(suite, test_list_arlm_insert_unique); 2675 cx_test_register(suite, test_list_arlm_insert_unique);
2613 cx_test_register(suite, test_list_parlm_insert_unique); 2676 cx_test_register(suite, test_list_parlm_insert_unique);
2677 cx_test_register(suite, test_list_arlm_insert_unique_not_sorted);
2678 cx_test_register(suite, test_list_parlm_insert_unique_not_sorted);
2614 cx_test_register(suite, test_list_arlm_swap); 2679 cx_test_register(suite, test_list_arlm_swap);
2615 cx_test_register(suite, test_list_parlm_swap); 2680 cx_test_register(suite, test_list_parlm_swap);
2616 cx_test_register(suite, test_list_arlm_sort); 2681 cx_test_register(suite, test_list_arlm_sort);
2617 cx_test_register(suite, test_list_parlm_sort); 2682 cx_test_register(suite, test_list_parlm_sort);
2618 2683
2664 cx_test_register(suite, test_list_pll_insert_array); 2729 cx_test_register(suite, test_list_pll_insert_array);
2665 cx_test_register(suite, test_list_ll_insert_sorted); 2730 cx_test_register(suite, test_list_ll_insert_sorted);
2666 cx_test_register(suite, test_list_pll_insert_sorted); 2731 cx_test_register(suite, test_list_pll_insert_sorted);
2667 cx_test_register(suite, test_list_ll_insert_unique); 2732 cx_test_register(suite, test_list_ll_insert_unique);
2668 cx_test_register(suite, test_list_pll_insert_unique); 2733 cx_test_register(suite, test_list_pll_insert_unique);
2734 cx_test_register(suite, test_list_ll_insert_unique_not_sorted);
2735 cx_test_register(suite, test_list_pll_insert_unique_not_sorted);
2669 cx_test_register(suite, test_list_ll_remove); 2736 cx_test_register(suite, test_list_ll_remove);
2670 cx_test_register(suite, test_list_pll_remove); 2737 cx_test_register(suite, test_list_pll_remove);
2671 cx_test_register(suite, test_list_ll_remove_and_get); 2738 cx_test_register(suite, test_list_ll_remove_and_get);
2672 cx_test_register(suite, test_list_pll_remove_and_get); 2739 cx_test_register(suite, test_list_pll_remove_and_get);
2673 cx_test_register(suite, test_list_ll_remove_array); 2740 cx_test_register(suite, test_list_ll_remove_array);
2720 cx_test_register(suite, test_list_pllm_insert_array); 2787 cx_test_register(suite, test_list_pllm_insert_array);
2721 cx_test_register(suite, test_list_llm_insert_sorted); 2788 cx_test_register(suite, test_list_llm_insert_sorted);
2722 cx_test_register(suite, test_list_pllm_insert_sorted); 2789 cx_test_register(suite, test_list_pllm_insert_sorted);
2723 cx_test_register(suite, test_list_llm_insert_unique); 2790 cx_test_register(suite, test_list_llm_insert_unique);
2724 cx_test_register(suite, test_list_pllm_insert_unique); 2791 cx_test_register(suite, test_list_pllm_insert_unique);
2792 cx_test_register(suite, test_list_llm_insert_unique_not_sorted);
2793 cx_test_register(suite, test_list_pllm_insert_unique_not_sorted);
2725 cx_test_register(suite, test_list_llm_swap); 2794 cx_test_register(suite, test_list_llm_swap);
2726 cx_test_register(suite, test_list_pllm_swap); 2795 cx_test_register(suite, test_list_pllm_swap);
2727 cx_test_register(suite, test_list_llm_sort); 2796 cx_test_register(suite, test_list_llm_sort);
2728 cx_test_register(suite, test_list_pllm_sort); 2797 cx_test_register(suite, test_list_pllm_sort);
2729 2798
2748 cx_test_register(suite, test_list_pkvl_insert_array); 2817 cx_test_register(suite, test_list_pkvl_insert_array);
2749 cx_test_register(suite, test_list_kvl_insert_sorted); 2818 cx_test_register(suite, test_list_kvl_insert_sorted);
2750 cx_test_register(suite, test_list_pkvl_insert_sorted); 2819 cx_test_register(suite, test_list_pkvl_insert_sorted);
2751 cx_test_register(suite, test_list_kvl_insert_unique); 2820 cx_test_register(suite, test_list_kvl_insert_unique);
2752 cx_test_register(suite, test_list_pkvl_insert_unique); 2821 cx_test_register(suite, test_list_pkvl_insert_unique);
2822 cx_test_register(suite, test_list_kvl_insert_unique_not_sorted);
2823 cx_test_register(suite, test_list_pkvl_insert_unique_not_sorted);
2753 cx_test_register(suite, test_list_kvl_remove); 2824 cx_test_register(suite, test_list_kvl_remove);
2754 cx_test_register(suite, test_list_pkvl_remove); 2825 cx_test_register(suite, test_list_pkvl_remove);
2755 cx_test_register(suite, test_list_kvl_remove_and_get); 2826 cx_test_register(suite, test_list_kvl_remove_and_get);
2756 cx_test_register(suite, test_list_pkvl_remove_and_get); 2827 cx_test_register(suite, test_list_pkvl_remove_and_get);
2757 cx_test_register(suite, test_list_kvl_remove_array); 2828 cx_test_register(suite, test_list_kvl_remove_array);

mercurial