Exemple #1
0
 def testMidGamePositionBishopMoves(self):
     bishopUnit = Unit(BISHOPR, self.game.white)
     self.game.setUnitOnBoard(3, 4, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["16", "25", "43", "52", "61", "07", "70", "45", "56", "67", "23", "12", "01"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #2
0
 def testUpperRightCornerBishopMoves(self):
     bishopUnit = Unit(BISHOPL, self.game.white)
     self.game.setUnitOnBoard(7, 7, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["11", "22", "33", "44", "55", "66", "00"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #3
0
 def testLowerRightCornerBishopMoves(self):
     bishopUnit = Unit(BISHOPR, self.game.white)
     self.game.setUnitOnBoard(7, 0, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["16", "25", "34", "43", "52", "61", "07"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #4
0
 def testLeftBorderBishopMoves(self):
     bishopUnit = Unit(BISHOPL, self.game.white)
     self.game.setUnitOnBoard(0, 2, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["11", "20", "13", "24", "35", "46", "57"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #5
0
 def testRightBorderBishopMoves(self):
     bishopUnit = Unit(BISHOPR, self.game.white)
     self.game.setUnitOnBoard(7, 2, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["61", "50", "63", "54", "45", "36", "27"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #6
0
 def testStartPositionBlackRightBishopMoves(self):
     bishopUnit = Unit(BISHOPR, self.game.white)
     self.game.setUnitOnBoard(2, 7, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["16", "05", "36", "45", "54", "63", "72"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #7
0
 def testStartPositionBlackLeftBishopMoves(self):
     bishopUnit = Unit(BISHOPL, self.game.white)
     self.game.setUnitOnBoard(5, 7, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["02", "13", "24", "35", "46", "66", "75"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #8
0
 def testStartPositionWhiteRightBishopMoves(self):
     bishopUnit = Unit(BISHOPR, self.game.white)
     self.game.setUnitOnBoard(5, 0, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["05", "14", "23", "32", "41", "61", "72"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #9
0
 def testStartPositionWhiteLeftBishopMoves(self):
     bishopUnit = Unit(BISHOPL, self.game.white)
     self.game.setUnitOnBoard(2, 0, bishopUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["11", "02", "31", "42", "53", "64", "75"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #10
0
 def testMidGamePositionBishopNoHitMoves(self):
     bishopUnit = Unit(BISHOPR, self.game.white)
     self.game.setUnitOnBoard(3, 4, bishopUnit)
     self.game.setUnitOnBoard(4, 5, Unit(KNIGHT, self.game.white))
     self.game.setUnitOnBoard(5, 2, Unit(KNIGHT, self.game.white))
     self.game.setUnitOnBoard(2, 3, Unit(KNIGHT, self.game.white))
     self.game.setUnitOnBoard(1, 6, Unit(KNIGHT, self.game.white))
     calculatePossibleMoves(self.game, self.game.turn)
     expectedMoves = ["43", "25"]
     assertExpectedMovesResults(expectedMoves, bishopUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 5, 5)
Exemple #11
0
 def testBlackEnPassantLeft(self):
     game = self.game
     opponentUnit = Unit(PAWN, game.white)
     opponentUnit2 = Unit(PAWN, game.white)
     game.setUnitOnBoard(1, 3, self.pawnUnit)
     game.setUnitOnBoard(0, 1, opponentUnit)
     # white turn
     game.turn = game.turn.opponent
     calculatePossibleMoves(game, game.turn, True)
     assertExpectedMovesResults(["02", "03"], opponentUnit)
     opponentUnit.moves = ["03"]
     game.writeUnitMovesToFile(game.turn)
     game.moveUnit()
     game.turn = game.turn.opponent
     # black turn
     game.setUnitOnBoard(2, 3, opponentUnit2)
     calculatePossibleMoves(game, game.turn, True)
     assertExpectedMovesResults(["12", "pl"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(game, 2, 3)
     # clean up database and logfile
     removeLogFileAndDatabase()
Exemple #12
0
 def testWhiteEnPassantRight(self):
     game = self.game
     opponentUnit = Unit(PAWN, game.black)
     opponentUnit2 = Unit(PAWN, game.black)
     game.setUnitOnBoard(1, 4, self.pawnUnit)
     game.setUnitOnBoard(2, 6, opponentUnit)
     # black turn
     game.turn = game.turn.opponent
     calculatePossibleMoves(game, game.turn, True)
     assertExpectedMovesResults(["25", "24"], opponentUnit)
     opponentUnit.moves = ["24"]
     game.writeUnitMovesToFile(game.turn)
     game.moveUnit()
     game.turn = game.turn.opponent
     # white turn
     game.setUnitOnBoard(0, 4, opponentUnit2)
     calculatePossibleMoves(game, game.turn, True)
     assertExpectedMovesResults(["15", "pr"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(game, 1, 3)
     # clean up database and logfile
     removeLogFileAndDatabase()
Exemple #13
0
 def testWhitePawnPromotionBlockedFront(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     self.game.setUnitOnBoard(1, 7, Unit(ROOK, self.game.black))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults([], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 2)
Exemple #14
0
 def testMidGameWhitePawnMovesBlockedFront2(self):
     self.game.setUnitOnBoard(1, 2, self.pawnUnit)
     self.game.setUnitOnBoard(1, 4, Unit(PAWN, self.game.black))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["13"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 2)
Exemple #15
0
 def testStartPositionWhitePawnMovesRightHit(self):
     self.game.setUnitOnBoard(1, 1, self.pawnUnit)
     self.game.setUnitOnBoard(2, 2, Unit(PAWN, self.game.black))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["22", "12", "13"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 2)
Exemple #16
0
 def testWhitePawnPromotion(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["173", "176"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #17
0
 def testMidGameWhitePawnMoves(self):
     self.game.setUnitOnBoard(1, 2, self.pawnUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["13"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 1)
Exemple #18
0
 def testWhitePawnPromotionLeftBlocked(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     self.game.setUnitOnBoard(0, 7, Unit(ROOK, self.game.white))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["173", "176"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 2, 2)
Exemple #19
0
 def testStartPositionBlackPawnMovesBlockedFrontBlack(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     self.game.setUnitOnBoard(1, 5, Unit(PAWN, self.game.black))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults([], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 0, 2)
Exemple #20
0
 def testBlackPawnPromotionRightHit(self):
     self.game.setUnitOnBoard(1, 1, self.pawnUnit)
     self.game.setUnitOnBoard(0, 0, Unit(ROOK, self.game.white))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["003", "103", "006", "106"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 2)
Exemple #21
0
 def testStartPositionBlackPawnMoves(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["15", "14"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 0, 1)
Exemple #22
0
 def testWhitePawnPromotionRightHit(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     self.game.setUnitOnBoard(2, 7, Unit(ROOK, self.game.black))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["273", "173", "276", "176"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 2)
Exemple #23
0
 def testStartPositionWhitePawnMovesBlockedFrontWhite(self):
     self.game.setUnitOnBoard(1, 1, self.pawnUnit)
     self.game.setUnitOnBoard(1, 2, Unit(PAWN, self.game.white))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults([], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 2, 2)
Exemple #24
0
 def testStartPositionBlackPawnMovesRightHit(self):
     self.game.setUnitOnBoard(1, 6, self.pawnUnit)
     self.game.setUnitOnBoard(0, 5, Unit(PAWN, self.game.white))
     calculatePossibleMoves(self.game, self.game.turn)
     assertExpectedMovesResults(["05", "15", "14"], self.pawnUnit)
     assertNumberOfWhiteAndTotalUnits(self.game, 1, 2)