def test_contains(self): llist = SinglyLinkedList() llist.insert_last(1) llist.insert_last(2) llist.insert_last(3) llist.reverse() self.assertEqual(llist.head.data, 3) self.assertEqual(llist.head.next.data, 2) self.assertEqual(llist.head.next.next.data, 1)
def test_insert_last(self): llist = SinglyLinkedList() llist.insert_last(0) self.assertEqual(llist.size, 1) self.assertEqual(llist.head.data, 0) llist.insert_last(1) self.assertEqual(llist.size, 2) self.assertEqual(llist.head.data, 0) self.assertEqual(llist.head.next.data, 1)
def test_index_of(self): llist = SinglyLinkedList() llist.insert_last(0) llist.insert_last(1) llist.insert_last(2) self.assertEqual(llist.index_of(0), 0) self.assertEqual(llist.index_of(1), 1) self.assertEqual(llist.index_of(2), 2) self.assertEqual(llist.index_of(3), -1)
def test_remove_first(self): llist = SinglyLinkedList() self.assertRaises(Exception, llist.remove_first) llist.insert_last(0) llist.insert_last(1) llist.insert_last(2) self.assertEqual(llist.remove_first(), 0) self.assertEqual(llist.size, 2) self.assertEqual(llist.head.data, 1) self.assertEqual(llist.remove_first(), 1) self.assertEqual(llist.size, 1) self.assertEqual(llist.head.data, 2) self.assertEqual(llist.remove_first(), 2) self.assertEqual(llist.size, 0) self.assertEqual(llist.head, None)
def test_remove(self): llist = SinglyLinkedList() self.assertRaises(Exception, llist.remove) llist.insert_last(0) llist.insert_last(1) llist.insert_last(2) llist.insert_last(3) self.assertEqual(llist.remove(0), 0) self.assertEqual(llist.size, 3) self.assertEqual(llist.head.data, 1) self.assertEqual(llist.remove(2), 2) self.assertEqual(llist.size, 2) self.assertEqual(llist.head.data, 1) self.assertEqual(llist.head.next.data, 3) self.assertEqual(llist.remove(3), 3) self.assertEqual(llist.size, 1) self.assertEqual(llist.head.data, 1) self.assertEqual(llist.head.next, None) self.assertEqual(llist.remove(1), 1) self.assertEqual(llist.size, 0) self.assertEqual(llist.head, None)