Example #1
0
    def test_remove_all_nodes(self):
        # arrange
        head = create_linked_list([0, 0, 0, 0, 0])
        val = 0

        # act
        result = remove_val(head, val)

        # assert
        self.assertIsNone(result)
Example #2
0
    def test_no_node(self):
        # arrange
        head = None
        val = 2

        # act
        result = remove_val(head, val)

        # assert
        self.assertIsNone(result)
Example #3
0
    def test_remove_start_nodes(self):
        # arrange
        head = create_linked_list([5, 5, 6, 9, 7])
        val = 5

        # act
        result = remove_val(head, val)
        result_as_array = create_array(result)

        # assert
        self.assertSequenceEqual([6, 9, 7], result_as_array)
Example #4
0
    def test_remove_end_nodes(self):
        # arrange
        head = create_linked_list([1, 2, 3, -1, -1, -1])
        val = -1

        # act
        result = remove_val(head, val)
        result_as_array = create_array(result)

        # assert
        self.assertSequenceEqual([1, 2, 3], result_as_array)
Example #5
0
    def test_remove_middle_node(self):
        # arrange
        head = create_linked_list([1, 2, 5, 2, 3, 2, 2, 1])
        val = 2

        # act
        result = remove_val(head, val)
        result_as_array = create_array(result)

        # assert
        self.assertSequenceEqual([1, 5, 3, 1], result_as_array)
Example #6
0
    def test_no_nodes_to_remove(self):
        # arrange
        head = create_linked_list([1, 2, 5, -3, 2, 10])
        val = 4

        # act
        result = remove_val(head, val)
        result_as_array = create_array(result)

        # assert
        self.assertSequenceEqual([1, 2, 5, -3, 2, 10], result_as_array)