示例#1
0
 def test_3(self):
     bstr = "...o......,....x.....,.....x....,..o...o..."
     b = Board()
     b.set_board(bstr)
     self.assertCountEqual([(3, 0, Checker(BLACK)), (2, 3, Checker(BLACK)),
                            (6, 3, Checker(BLACK)), (4, 1, Checker(WHITE)),
                            (5, 2, Checker(WHITE))], b.get_checkers())
示例#2
0
 def test_1(self):
     bstr = "x"
     b = Board()
     b.set_board(bstr)
     # https://docs.python.org/3.2/library/unittest.html#unittest.TestCase.assertCountEqual
     # tests if list have same elements
     self.assertCountEqual([(0, 0, Checker(WHITE))], b.get_checkers())
示例#3
0
def _board_value(board: Board, color: bool) -> int:
    """
    Returns value of the board. Value is calculated as +1 for each checker of given color and -1 for each checker of
    other color.
    :param board:
    :param color:
    :return:
    """
    total = 1
    for (x, y, checker) in board.get_checkers():
        total += (+1 if checker.color == color else -1) * (5 if checker.crowned
                                                           else 1)
    return total
示例#4
0
 def test_2(self):
     bstr = ".....o"
     b = Board()
     b.set_board(bstr)
     self.assertCountEqual([(5, 0, Checker(BLACK))], b.get_checkers())