def test_init_many_element_list(self): linked = LinkedList(['pear', 'apple', 'banana']) self.assertEqual('pear', linked.first_node.data) self.assertEqual('apple', linked.first_node.next.data) self.assertEqual('banana', linked.first_node.next.next.data) self.assertEqual(None, linked.first_node.next.next.next)
def test_insert_index_2_one_element_list(self): linked = LinkedList(['one']) with self.assertRaises(OutOfRangeError): linked.insert_at_index(2, 'second')
def test_is_empty_false(self): self.assertFalse(LinkedList([4.5]).is_empty())
def test_repr_many_elements(self): self.assertEqual(LinkedList([1, 2, 3, 4]).__repr__(), 'LinkedList([1, 2, 3, 4])')
def test_repr_empty_list(self): self.assertEqual(LinkedList([]).__repr__(), 'LinkedList([])')
def test_str_one_element(self): self.assertEqual(LinkedList(['one']).__str__(), '| one | -> None')
def test_equality_to_list(self): self.assertNotEqual(LinkedList(['one']), ['one'])
def test_delete_bottom_many_element_list(self): linked = LinkedList(['one', 'two', 3, 4, 5, 6]) linked.delete_from_bottom() self.assertEqual("| one | -> | two | -> | 3 | -> | 4 | -> | 5 | -> None", str(linked))
def test_delete_index_1_empty_list(self): linked = LinkedList([]) with self.assertRaises(OutOfRangeError): linked.delete_at_index(1)
def test_delete_bottom_one_element_list(self): linked = LinkedList(['one']) linked.delete_from_bottom() self.assertEqual(None, linked.first_node)
def test_delete_bottom_two_element_list(self): linked = LinkedList(['one', 'two']) linked.delete_from_bottom() self.assertEqual('one', linked.first_node.data) self.assertEqual(None, linked.first_node.next)
def test_delete_bottom_empty_list(self): linked = LinkedList([]) with self.assertRaises(IndexError): linked.delete_from_bottom()
def test_delete_top_one_element_list(self): linked = LinkedList(['two']) linked.delete_from_top() self.assertEqual(None, linked.first_node)
def test_insert_index_2_many_element_list(self): linked = LinkedList(['one', 'two', 4]) linked.insert_at_index(2, '3') self.assertEqual('3', linked.get_node_with_value('3').data) self.assertEqual(4, linked.get_node_with_value('3').next.data) self.assertEqual("| one | -> | two | -> | 3 | -> | 4 | -> None", str(linked))
def test_equality_one(self): self.assertEqual(LinkedList(['one']), LinkedList(['one']))
def test_delete_index_0_one_element_list(self): linked = LinkedList(['one']) linked.delete_at_index(0) self.assertEqual(None, linked.first_node)
def test_equality_not_equal(self): self.assertNotEqual(LinkedList(['one']), LinkedList(['one', 'two']))
def test_delete_index_1_one_element_list(self): linked = LinkedList(['one']) with self.assertRaises(OutOfRangeError): linked.delete_at_index(1)
def test_init_one_element_list(self): linked = LinkedList(['one']) self.assertEqual('one', linked.first_node.data) self.assertEqual(None, linked.first_node.next)
def test_delete_index_3_many_element_list(self): linked = LinkedList(['one', 'two', 3, 4]) linked.delete_at_index(3) self.assertEqual("| one | -> | two | -> | 3 | -> None", str(linked))
def test_str_empty_list(self): self.assertEqual(LinkedList([]).__str__(), '| None | -> None')
def test_delete_index_5_many_element_list(self): linked = LinkedList(['one', 'two', 3, 4]) with self.assertRaises(OutOfRangeError): linked.delete_at_index(5)
def test_str_many_elements(self): self.assertEqual(LinkedList(['first', 'second', 'third']).__str__(), '| first | -> | second | -> | third | -> None')
def test_init_empty_list(self): self.assertEqual(None, LinkedList([]).first_node)
def test_repr_one_element(self): self.assertEqual(LinkedList([3456]).__repr__(), 'LinkedList([3456])')
def test_generator(self): linked = LinkedList(['one']) for node in linked: self.assertEqual(node.data, 'one')
def test_is_empty_true(self): self.assertTrue(LinkedList([]).is_empty())
def test_equality_empty(self): self.assertEqual(LinkedList([]), LinkedList([]))
def test_find_index_empty_list(self): linked = LinkedList([]) self.assertEqual(None, linked.find_index(2))
def test_insert_index_1_one_element_list(self): linked = LinkedList(['one']) linked.insert_at_index(1, 2) self.assertEqual('one', linked.first_node.data) self.assertEqual(2, linked.first_node.next.data)