예제 #1
0
    def setUp(self):
        self.board = chessboard.ChessBoard()
        self.board[60] = pieces.KingPiece('black')
        self.board[4] = pieces.KingPiece('white')

        self.evaluate = engine.Evaluator().evaluate
        return None
    def test_node_parent(self):
        # Make the parent first.
        parentstate = chessboard.ChessBoard()
        parentstate[1] = pieces.RookPiece('white')
        parent = engine.Node(None, (0, 1), parentstate)

        # Set up the board state.
        state = chessboard.ChessBoard()
        state[5] = pieces.RookPiece('white')

        # Then time it.
        with Timer() as t:
            for x in xrange(self.numberofloops):
                engine.Node(parent, (1, 5), state)
        print '\n\t=> elapsed time for %i loops: %s s' % (self.numberofloops, t.secs)
        return None
    def test_simulateboard(self):
        mycls = chessboard.ChessBoard()
        mycls.addpiece(core.QueenPiece, 12)

        duplicatecls = mycls.simulateboard()
        self.assertEqual(duplicatecls[12].piecetype(), mycls[12].piecetype())
        self.assertIs(duplicatecls.__class__, chessboard.ChessBoard)
예제 #4
0
    def setUp(self):
        self.board = chessboard.ChessBoard()
        self.board[18] = pieces.QueenPiece('white')
        self.board[19] = pieces.PawnPiece('white')
        self.board[23] = pieces.RookPiece('black')
        self.board[42] = pieces.KnightPiece('black')

        self.generator = movegenerator._CoreMoveGenerator(self.board)
예제 #5
0
    def setUp(self):
        """Initialise the board."""
        # Make a plain, clear board.
        self.board = chessboard.ChessBoard()

        # Make special error messages to print if all hell breaks loose.
        self.errormessage = "ERROR"
        return None
    def setUp(self):
        self.numberofloops = 10

        self.board = chessboard.ChessBoard()
        self.board[27] = pieces.KingPiece('white')
        self.board[45] = pieces.KingPiece('black')
        self.generator = movegenerator.MoveGenerator(self.board)
        return None
    def test_tree_addnode(self):
        # Initilise Tree
        tree = engine.TreeStructure()

        # Make the parent first.
        parentstate = chessboard.ChessBoard()
        parentstate[1] = pieces.RookPiece('white')
        parent = engine.Node(None, (0, 1), parentstate)

        # Set up the board state.
        state = chessboard.ChessBoard()
        state[5] = pieces.RookPiece('white')
        child = engine.Node(parent, (1, 5), state)
        with Timer() as t:
            for x in xrange(10000):
                tree.addnode(child)
        print '\n\t=> elapsed time for 10000 loops: %s s' % t.secs
        return None
예제 #8
0
    def setUp(self):
        board = chessboard.ChessBoard()
        board[4] = pieces.KingPiece('white')
        board[8] = pieces.PawnPiece('white')
        board[9] = pieces.PawnPiece('white')
        board[13] = pieces.PawnPiece('white')
        board[14] = pieces.PawnPiece('white')
        board[23] = pieces.PawnPiece('white')

        board[60] = pieces.KingPiece('black')
        board[17] = pieces.RookPiece('black')
        board[30] = pieces.RookPiece('black')

        self.generator = movegenerator.MoveGenerator(board)
        return None
예제 #9
0
    def setUp(self):
        self.board = chessboard.ChessBoard()
        self.board[60] = pieces.KingPiece('black')
        self.board[4] = pieces.KingPiece('white')

        self.board[51] = pieces.PawnPiece('black')
        self.board[52] = pieces.PawnPiece('black')
        self.board[53] = pieces.PawnPiece('black')
        self.board[49] = pieces.PawnPiece('black')

        self.board[36] = pieces.PawnPiece('white')
        self.board[34] = pieces.PawnPiece('white')

        self.generator = movegenerator.MoveGenerator(self.board)
        return None
예제 #10
0
    def setUp(self):
        self.board = chessboard.ChessBoard()
        self.board[0] = pieces.RookPiece('white')
        self.board[55] = pieces.RookPiece('white')
        self.board[4] = pieces.KingPiece('white')
        self.board[10] = pieces.PawnPiece('white')
        self.board[13] = pieces.PawnPiece('white')
        self.board[15] = pieces.PawnPiece('white')
        self.board[31] = pieces.BishopPiece('black')
        self.board[56] = pieces.RookPiece('black')
        self.board[60] = pieces.KingPiece('black')
        self.board[49] = pieces.PawnPiece('black')

        self.generator = movegenerator.MoveGenerator(self.board)
        return None
    def test_allowedtocastle(self):
        board = chessboard.ChessBoard()
        board.addpiece(core.KingPiece, 4)
        board.addpiece(core.RookPiece, 0)
        board.addpiece(core.RookPiece, 7)

        self.assertTrue(board._allowedtocastle(left=True))
        self.assertTrue(board._allowedtocastle(right=True))

        board.move(4, 12)

        self.assertFalse(board._allowedtocastle(left=True))
        self.assertFalse(board._allowedtocastle(right=True))

        self.assertEqual(board._castleleft, False)
        self.assertEqual(board._castleright, False)
    def setUp(self):
        """Initialise the board."""
        self.board = chessboard.ChessBoard()

        # Pick a position on the board to test.
        self.startpos = randint(0, 63)
        self.startpos2 = (self.startpos + 2) % 63
        self.startcoord = (self.startpos / 8, self.startpos % 8)
        self.startcoord2 = (self.startpos2 / 8, self.startpos2 % 8)
        self.startvector = core.Vector(*self.startcoord)
        self.startvector2 = core.Vector(*self.startcoord2)

        # Put a piece1 on the board.
        self.piece1 = core.KingPiece(playerpiece=True,
                                     startpositionindex=self.startpos)
        self.piece2 = core.QueenPiece(playerpiece=True,
                                      startpositionindex=self.startpos2)
        self.board._board[
            self.startpos] = self.piece1  # Insert piece1 manually.

        self.errormessage = " PIECE INDEX: %i" % self.startpos
        return None
예제 #13
0
 def setUp(self):
     self.board = chessboard.ChessBoard()
     return None
예제 #14
0
 def setUp(self):
     self.board = chessboard.ChessBoard()
     self.engine = engine.ChessEngine()
     return None
    def setUp(self):
        self.numberofloops = 10

        self.board = chessboard.ChessBoard()
        self.board.setupnormalboard()
        return None
 def setUp(self):
     self.gui = usercontrol.EngineGUI()
     self.board = chessboard.ChessBoard()
     self.board.setupnormalboard()
     return None