test/test_list.cpp

changeset 638
eafb45eefc51
parent 630
ac5e7f789048
child 639
309e8b08c60e
     1.1 --- a/test/test_list.cpp	Mon Jan 23 20:00:26 2023 +0100
     1.2 +++ b/test/test_list.cpp	Mon Jan 23 20:22:11 2023 +0100
     1.3 @@ -633,6 +633,34 @@
     1.4          EXPECT_EQ(*(int *) cxListAt(list, 3), 42);
     1.5      }
     1.6  
     1.7 +    static void verifyInsertArray(CxList *list) {
     1.8 +        int a[5] = {5, 47, 11, 13, 42};
     1.9 +        int b[5] = {9, 18, 72, 50, 7};
    1.10 +
    1.11 +        size_t inserted;
    1.12 +
    1.13 +        inserted = cxListInsertArray(list, 0, a, 5);
    1.14 +        EXPECT_EQ(inserted, 5);
    1.15 +        EXPECT_EQ(*(int *) cxListAt(list, 0), 5);
    1.16 +        EXPECT_EQ(*(int *) cxListAt(list, 1), 47);
    1.17 +        EXPECT_EQ(*(int *) cxListAt(list, 2), 11);
    1.18 +        EXPECT_EQ(*(int *) cxListAt(list, 3), 13);
    1.19 +        EXPECT_EQ(*(int *) cxListAt(list, 4), 42);
    1.20 +
    1.21 +        inserted = cxListInsertArray(list, 3, b, 5);
    1.22 +        EXPECT_EQ(inserted, 5);
    1.23 +        EXPECT_EQ(*(int *) cxListAt(list, 0), 5);
    1.24 +        EXPECT_EQ(*(int *) cxListAt(list, 1), 47);
    1.25 +        EXPECT_EQ(*(int *) cxListAt(list, 2), 11);
    1.26 +        EXPECT_EQ(*(int *) cxListAt(list, 3), 9);
    1.27 +        EXPECT_EQ(*(int *) cxListAt(list, 4), 18);
    1.28 +        EXPECT_EQ(*(int *) cxListAt(list, 5), 72);
    1.29 +        EXPECT_EQ(*(int *) cxListAt(list, 6), 50);
    1.30 +        EXPECT_EQ(*(int *) cxListAt(list, 7), 7);
    1.31 +        EXPECT_EQ(*(int *) cxListAt(list, 8), 13);
    1.32 +        EXPECT_EQ(*(int *) cxListAt(list, 9), 42);
    1.33 +    }
    1.34 +
    1.35      void verifyRemove(CxList *list) const {
    1.36          EXPECT_EQ(cxListRemove(list, 2), 0);
    1.37          EXPECT_EQ(cxListRemove(list, 4), 0);
    1.38 @@ -824,6 +852,19 @@
    1.39      verifyInsert(autofree(cxArrayListCreate(&testingAllocator, cx_cmp_int, sizeof(int), 2)));
    1.40  }
    1.41  
    1.42 +TEST_F(LinkedList, cxListInsertArray) {
    1.43 +    verifyInsertArray(autofree(cxLinkedListCreate(&testingAllocator, cx_cmp_int, sizeof(int))));
    1.44 +}
    1.45 +
    1.46 +TEST_F(PointerLinkedList, cxListInsertArray) {
    1.47 +    //TODO: this is unfixably broken - solve with issue #234
    1.48 +    //verifyInsertArray(autofree(cxPointerLinkedListCreate(&testingAllocator, cx_cmp_int)));
    1.49 +}
    1.50 +
    1.51 +TEST_F(ArrayList, cxListInsertArray) {
    1.52 +    verifyInsertArray(autofree(cxArrayListCreate(&testingAllocator, cx_cmp_int, sizeof(int), 4)));
    1.53 +}
    1.54 +
    1.55  TEST_F(LinkedList, cxListRemove) {
    1.56      verifyRemove(linkedListFromTestData());
    1.57  }

mercurial