def test_addDisk_withEmptyStack(self): stack = Stack() stack.addDisk(Disk(0)) expected = [Disk(0)] self.assertEqual(expected, stack._stack)
def test_addDisk_withSmallerDisk(self): stack = Stack() stack.addDisk(Disk(1)) stack.addDisk(Disk(0)) expected = [ Disk(1), Disk(0), ] self.assertEqual(expected, stack._stack)
def test_removeDisk(self): stack = Stack(1) actual = stack.removeDisk() expected = Disk(0) self.assertEqual(expected, actual)
def test_init(self): stack = Stack(3) expected = [Disk(2), Disk(1), Disk(0)] self.assertEqual(expected, stack._stack)
def test_addDisk_withLargerDisk(self): stack = Stack() stack.addDisk(Disk(0)) self.assertRaises(HanoiException, stack.addDisk, Disk(1))
def test_mayAddDisk_withLargerDisk(self): stack = Stack() stack.addDisk(Disk(0)) mayAddDisk = stack.mayAddDisk(Disk(1)) self.assertFalse(mayAddDisk)
def test_mayAddDisk_withSmallerDisk(self): stack = Stack() stack.addDisk(Disk(1)) mayAddDisk = stack.mayAddDisk(Disk(0)) self.assertTrue(mayAddDisk)
def test_mayAddDisk_withEmptyStack(self): stack = Stack() mayAddDisk = stack.mayAddDisk(Disk(0)) self.assertTrue(mayAddDisk)
def test_isEmpty(self): stack = Stack() self.assertTrue(stack.isEmpty()) stack.addDisk(Disk(0)) self.assertFalse(stack.isEmpty())
def __init__(self, numberOfDisks=0): self._stack = [] for i in reversed(range(numberOfDisks)): disk = Disk(i) self._stack.append(disk)