def test_delete_item(self): sl = SingleLinkedList() sl.add(1) sl.add(2) sl.add(3) self.assertEqual(3, len(sl)) self.assertEqual(1, sl._root.value) self.assertRaises(Exception, lambda x : sl.delete_item(4)) sl.delete_item() self.assertEqual(2, len(sl)) self.assertEqual(2, sl._root.value) sl.add(4) sl.add(5) sl.add(6) sl.delete_item(len(sl) - 1) self.assertEqual("2, 3, 4, 5", sl.__str__()) sl.delete_item(1) self.assertEqual("2, 4, 5", sl.__str__()) sl.delete_item() self.assertEqual("4, 5", sl.__str__())
def test_delete_item(self): sl = SingleLinkedList() sl.add(1) sl.add(2) sl.add(3) self.assertEqual(3, len(sl)) self.assertEqual(1, sl._root.value) self.assertRaises(Exception, lambda x: sl.delete_item(4)) sl.delete_item() self.assertEqual(2, len(sl)) self.assertEqual(2, sl._root.value) sl.add(4) sl.add(5) sl.add(6) sl.delete_item(len(sl) - 1) self.assertEqual("2, 3, 4, 5", sl.__str__()) sl.delete_item(1) self.assertEqual("2, 4, 5", sl.__str__()) sl.delete_item() self.assertEqual("4, 5", sl.__str__())
def test_delete(self): sl = SingleLinkedList() sl.add(2) sl.add(1) sl.add(3) self.assertEqual(3, len(sl)) self.assertEqual(2, sl._root.value) self.assertRaises(Exception, lambda x: sl.delete(4)) sl.delete(1) self.assertEqual("2, 3", sl.__str__()) sl.delete(2) self.assertEqual("3", sl.__str__()) sl.delete(3) self.assertEqual("Empty List", sl.__str__()) self.assertEqual(0, len(sl))
def test_remove_duplicates_light(self): sl = SingleLinkedList() sl.add(2) sl.add(1) sl.add(3) sl.add(2) sl.add(3) sl.add(1) sl.add(2) self.assertEqual(7, len(sl)) sl.remove_duplicates_light() self.assertEqual(3, len(sl)) self.assertEqual("2, 1, 3", sl.__str__())