class DoublyLinkedListTest(unittest.TestCase): def setUp(self): self.list=DoublyLinkedList() def test_add(self): self.list.add(1) self.assertEqual(self.list.get_size(),1) def test_addMultiple(self): for i in range(4): self.list.add(i) self.assertEqual(self.list.get_size(),4) def test_add_to_index(self): self.list.add_to_index(5,0) self.assertEqual(self.list.get(0),5) self.list.add(1) self.list.add(3) self.list.add_to_index(2,1) self.assertEqual(self.list.get(1),2) self.list.add_to_index(0,0) self.assertEqual(self.list.get(0),0) self.list.add_to_index(4,4) self.assertEqual(self.list.get(4),4) def test_get(self): self.list.add_multiple(1,2,3) self.assertEqual(self.list.get(1),2) def test_get_last(self): self.list.add_multiple(1,2,3) self.assertEqual(self.list.get_last(),3) def test_get_first(self): self.list.add_multiple(1,2,3) self.assertEqual(self.list.get_first(),1) def test_remove(self): self.list.add_multiple(1,2,3,4,5) self.list.remove(1) self.assertEqual(self.list.get(1),3) self.list.remove(0) self.assertEqual(self.list.get(0),3) def test_remove_last(self): self.list.add_multiple(1,2,3,4,5) self.list.remove_last() self.assertEqual(self.list.get_last(),4) def test_pop(self): self.list.add_multiple(1,2,3) self.assertEqual(self.list.pop(),3) self.assertEqual(self.list.pop(),2) def test_get_size(self): self.assertEqual(self.list.get_size(),0) self.list.add_multiple(1,2,3) self.assertEqual(self.list.get_size(),3) def test_is_empty(self): self.assertTrue(self.list.is_empty()) self.list.add_multiple(1,2,3) self.assertFalse(self.list.is_empty()) def test_str(self): self.list.add(1) self.list.add(4) self.list.add(3) self.assertEqual(str(self.list),"[1,4,3]")