Esempio n. 1
0
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))