def test_all_even(self): all_even = LinkedList() node_vals = [2, 4, 6] for node_val in node_vals: all_even.add_node(Node(node_val)) all_even.remove_odds() "It should not remove any nodes if all nodes are even" self.assertEqual(all_even.get_length(), 3)
def test_tail_even(self): even_tail = LinkedList() node_vals = [2, 3, 4, 10] for node_val in node_vals: even_tail.add_node(Node(node_val)) even_tail.remove_odds() "it should remove odds if the tail is even and the head is even" self.assertEqual(even_tail.tail.data, 10) self.assertEqual(even_tail.get_length(), 3)
def test_tail_odd(self): odd_tail = LinkedList() node_vals = [2, 3, 4, 5] for node_val in node_vals: odd_tail.add_node(Node(node_val)) odd_tail.remove_odds() "it should remove the tail if the tail is odd and the head is even" self.assertEqual(odd_tail.tail.data, 4) self.assertEqual(odd_tail.get_length(), 2)
def test_all_odd(self): all_odd = LinkedList() node_vals = [1, 3, 5, 7] for node_val in node_vals: all_odd.add_node(Node(node_val)) all_odd.remove_odds() "it should remove all nodes if all nodes are odd" self.assertEqual(all_odd.get_length(), 0) self.assertEqual(all_odd.head, None) self.assertEqual(all_odd.tail, None)
def test_head_odd(self): odd_head = LinkedList() node_vals = [3, 4, 5, 6] for node_val in node_vals: odd_head.add_node(Node(node_val)) odd_head.remove_odds() "it should remove odds when the head node is odd and the tail is even" self.assertEqual(odd_head.head.data, 4) self.assertEqual(odd_head.get_length(), 2) self.assertEqual(odd_head.tail.data, 6)
def test_one_even_node(self): one_even_list = LinkedList() one_even_list.add_node(Node(2)) one_even_list.remove_odds() "it should not change the list if the list has ony one node, which is even" self.assertEqual(one_even_list.get_length(), 1)