Пример #1
0
    def test_identify_territory(self):
        board = goboard.from_string(
            """
            ...b..w..
            ...b..w..
            bbbb..w..
            wwwww.www
            wwbbw..w.
            wb.bbwww.
            wbbbb....
            ..b.b....
            ..bbb....
        """
        )

        territory = scoring.evaluate_territory(board)

        self.assertEqual(8, territory.num_black_territory)
        self.assertEqual(6, territory.num_white_territory)
        self.assertEqual(20, territory.num_black_stones)
        self.assertEqual(20, territory.num_white_stones)
        self.assertEqual(27, territory.num_dame)

        self.assertIn((0, 0), territory.dame_points)
        self.assertNotIn((8, 0), territory.dame_points)
Пример #2
0
    def test_get_first_valid_move(self):
        board = goboard.from_string('''
            .b.
            bb.
            .ww
        ''')
        candidates = [(0, 1), (1, 0), (2, 0), (2, 2)]

        self.assertEqual((2, 0), model.get_first_valid_move(board, 'b', candidates))
        self.assertEqual((2, 2), model.get_first_valid_move(board, 'w', candidates))
Пример #3
0
    def test_all_empty_points(self):
        board = goboard.from_string('''
            .b.
            bb.
            .ww
        ''')

        empty_points = model.all_empty_points(board)

        self.assertItemsEqual([(0, 0), (1, 2), (2, 0), (2, 2)], empty_points)
Пример #4
0
    def test_get_first_valid_move(self):
        board = goboard.from_string('''
            .b.
            bb.
            .ww
        ''')
        candidates = [(0, 1), (1, 0), (2, 0), (2, 2)]

        self.assertEqual((2, 0),
                         model.get_first_valid_move(board, 'b', candidates))
        self.assertEqual((2, 2),
                         model.get_first_valid_move(board, 'w', candidates))
Пример #5
0
    def test_all_empty_points(self):
        board = goboard.from_string('''
            .b.
            bb.
            .ww
        ''')

        empty_points = model.all_empty_points(board)

        self.assertItemsEqual(
            [(0, 0), (1, 2), (2, 0), (2, 2)],
            empty_points)
Пример #6
0
    def test_from_string(self):
        board = from_string('''
            .b...
            bb...
            .....
            ..www
            ..w..
        ''')

        self.assertEqual(5, board.board_size)
        self.assertNotIn((4, 0), board.board)
        self.assertEqual('b', board.board[4, 1])
        self.assertNotIn((4, 2), board.board)
        self.assertNotIn((1, 0), board.board)
        self.assertNotIn((1, 1), board.board)
        self.assertEqual('w', board.board[1, 2])
        self.assertEqual('w', board.board[0, 2])
Пример #7
0
    def test_identify_territory(self):
        board = goboard.from_string('''
            ...b..w..
            ...b..w..
            bbbb..w..
            wwwww.www
            wwbbw..w.
            wb.bbwww.
            wbbbb....
            ..b.b....
            ..bbb....
        ''')

        territory = scoring.evaluate_territory(board)

        self.assertEqual(8, territory.num_black_territory)
        self.assertEqual(6, territory.num_white_territory)
        self.assertEqual(20, territory.num_black_stones)
        self.assertEqual(20, territory.num_white_stones)
        self.assertEqual(27, territory.num_dame)

        self.assertIn((0, 0), territory.dame_points)
        self.assertNotIn((8, 0), territory.dame_points)