def test_delete_at_index_below_0(self): ''' When trying to delete a node at a given position. 1. Index must be below 0. 2. LookupError Expected. ''' ll = LinkedList() some_value = "Delete me" ll.append("s") ll.append("d") ll.append(some_value) ll.append("45") with self.assertRaises(LookupError): ll.delete_at(-1)
def test_delete_at_index_above_or_equal_to_size(self): ''' When trying to delete a node at a given position. 1. Index must be equal or above size. 2. LookupError Expected. ''' ll = LinkedList() some_value = "Delete me" ll.append("s") ll.append("d") ll.append(some_value) ll.append("45") with self.assertRaises(LookupError): ll.delete_at(ll.size)
def test_delete_at_index(self): ''' When trying to delete a node at a given position. 1. Delete a node at a desired index. 2. index must not be present in the list. ''' ll = LinkedList() some_value = "Delete me" ll.append("s") ll.append("d") ll.append(some_value) ll.append("45") self.assertEqual(ll.delete_at(2), some_value) self.assertFalse(ll.is_present(some_value))