class TestBoard(_CustomTest): def setUp(self): self.b = Board(3, 3) def test_constructor(self): self.assertIsNotNone(self.b) def test_cells_default_to_blank(self): self.assertFalse(self.b._is_pin(1, 0)) def test_set_pin_at(self): self.b._set_pin_at(1, 0) self.assertTrue(self.b._is_pin(1, 0)) def test_SetPinAtLeftBorder(self): self.b._set_pin_at(1, 0); self.assertEquals(self.b[1, 0], PROB_LBORDER) def test_SetPinClear(self): self.b._set_pin_at(2, 1) self.assertEquals(self.b[2, 1], PROB_PIN); def test_SetPinAtRightBorder(self): self.b._set_pin_at(1, 2) self.assertEquals(self.b[1, 2], PROB_RBORDER); def test_default_pin_distribution(self): expected = 'x.x\n' \ '.x.\n' \ 'x.x' self.assertEquals(expected, str(self.b)) def test_remove_pin(self): self.b.remove_pin_at(1, 1) self.assertFalse(self.b._is_pin(1, 1))