tests/test_list.c

changeset 1493
33f556a7eca6
parent 1486
717e472f18d9
equal deleted inserted replaced
1492:cc83ce484bf7 1493:33f556a7eca6
772 &new_begin, test_cmp_node 772 &new_begin, test_cmp_node
773 ); 773 );
774 CX_TEST_ASSERT(new_begin.prev == NULL); 774 CX_TEST_ASSERT(new_begin.prev == NULL);
775 CX_TEST_ASSERT(new_begin.next == &nodes[0]); 775 CX_TEST_ASSERT(new_begin.next == &nodes[0]);
776 CX_TEST_ASSERT(nodes[0].prev == &new_begin); 776 CX_TEST_ASSERT(nodes[0].prev == &new_begin);
777 CX_TEST_ASSERT(begin == &new_begin);
778 CX_TEST_ASSERT(end == &nodes[4]);
779
780 // duplicate the beginning node
781 // (expectation is that the duplicate is inserted after the first node)
782 node new_begin_dup = {0};
783 new_begin_dup.data = 1;
784 cx_linked_list_insert_sorted(
785 &begin, &end,
786 loc_prev, loc_next,
787 &new_begin_dup, test_cmp_node
788 );
789 CX_TEST_ASSERT(new_begin_dup.prev == &new_begin);
790 CX_TEST_ASSERT(new_begin_dup.next == &nodes[0]);
791 CX_TEST_ASSERT(nodes[0].prev == &new_begin_dup);
792 CX_TEST_ASSERT(new_begin.next == &new_begin_dup);
777 CX_TEST_ASSERT(begin == &new_begin); 793 CX_TEST_ASSERT(begin == &new_begin);
778 CX_TEST_ASSERT(end == &nodes[4]); 794 CX_TEST_ASSERT(end == &nodes[4]);
779 795
780 // now insert a chain 796 // now insert a chain
781 node chain_start = {NULL, NULL, 8}; 797 node chain_start = {NULL, NULL, 8};

mercurial