def test4(): game = Game(5, 5, 2, 4) checker = 1 if game.getBoard().getWidth() != 5 or game.getBoard().getHeight() != 5: print "getBoard() not OK. Please check" checker = 0 if not game.isActive(): print "isActive() not OK." print "Expected: True" print "Received: ", game.isActive() checker = 0 if game.getTurn() != 2: print "getTurn() not OK." print "Expected: 2" print "Received: ", game.getTurn() checker = 0 if game.getWinner() != 0: print "getWinner() not OK." print "Expected: 0" print "Received: ", game.getWinner() checker = 0 game.deactivate() if game.isActive(): print "isActive() or deactivate() not OK." print "Expected: False" print "Received: ", game.isActive() checker = 0 game.activate() if not game.isActive(): print "isActive() or activate() not OK." print "Expected: True" print "Received: ", game.isActive() checker = 0 game.switchTurn() if game.getTurn() != 1: print "switchTurn() not OK." print "Expected: 1" print "Received: ", game.getTurn() checker = 0 game.declareWinner(2) if game.getWinner() != 2: print "declareWinner() not OK." print "Expected: 2" print "Received: ", game.getWinner() checker = 0 game.draw() if checker == 1: print "Test 4 OK" else: print "Test 4 not OK"
def test10(): X, O = 1, 2 game = Game(5, 5, O, 4) checker = 1 game.mark(O, (2, 1)) game.mark(X, (2, 2)) game.mark(O, (1, 2)) game.mark(X, (0, 3)) game.mark(O, (1, 1)) copy_game = game.generateGameCopy() if game == copy_game: print "generateGameCopy() not OK. Expected: a copy, received: the instance itself." checker = 0 if game.getBoard() == copy_game.getBoard(): print "generateGameCopy() not OK. The copy and the main game are sharing the same board. Please use another board for the copy." checker = 0 if not copy_game.isActive(): print "generateGameCopy() not OK. It is not active while the main game is." checker = 0 if copy_game.getTurn() != game.getTurn(): print "generateGameCopy() not OK. Please review __turn." checker = 0 if copy_game.getWinner() != game.getWinner(): print "generateGameCopy() not OK. Please review __winner." checker = 0 if copy_game.getBoard().getBoardStatus() != game.getBoard().getBoardStatus(): print "generateGameCopy() not OK. The board status are not the same." print "Expected: ", game.getBoard().getBoardStatus() print "Received: ", copy_game.getBoard().getBoardStatus() checker = 0 game.draw() if checker == 1: print "Test 10 OK" else: print "Test 10 not OK"
def test8(): game = Game(5, 5, 2, 4) checker = 1 game.getBoard().setBoardStatus([[0, 0, 0, 0, 0], [0, 0, 1, 1, 2], [0, 0, 0, 2, 0], [0, 0, 0, 1, 0], [0, 2, 1, 0, 0]]) if game.getTurn() != 2: game.switchTurn() game.mark(2, (3, 2)) game.draw() if game.isActive(): print "mark() not OK. You may have forgotten to deactivate the game." print "Expected: Status active = True" print "Received: Status active = ", game.isActive() checker = 0 if game.getWinner() != 2: print "mark() not OK. You may have forgotten to declare the winner." print "Expected: Winner 2" print "Received: Winner ", game.getWinner() game = Game(5, 5, 2, 4) checker = 1 game.getBoard().setBoardStatus([[0, 2, 1, 2, 2], [2, 1, 1, 1, 2], [1, 1, 2, 2, 1], [2, 2, 1, 1, 1], [1, 2, 1, 1, 2]]) if game.getTurn() != 1: game.switchTurn() game.mark(1, (0, 0)) game.draw() if game.isActive(): print "mark() not OK. You may have forgotten to deactivate the game." print "Expected: Status active = True" print "Received: Status active = ", game.isActive() checker = 0 if game.getWinner() != 0: print "mark() not OK. The game should have no winner." print "Expected: Winner 0" print "Received: Winner ", game.getWinner() game = Game(5, 5, 2, 4) checker = 1 game.getBoard().setBoardStatus([[0, 0, 0, 0, 0], [0, 0, 1, 1, 2], [0, 0, 0, 2, 0], [0, 0, 0, 1, 0], [0, 2, 1, 0, 0]]) if game.getTurn() != 2: game.switchTurn() game.mark(2, (3, 4)) game.draw() if not game.isActive(): print "mark() not OK. " print "Expected: Status active = True" print "Received: Status active = ", game.isActive() checker = 0 if game.getWinner() != 0: print "mark() not OK. The game should have no winner." print "Expected: Winner 0" print "Received: Winner ", game.getWinner() if game.getTurn() != 1: print "mark() not OK. You may have forgotten to switch the turn." print "Expected: Turn of 1" print "Received: Turn of ", game.getTurn() if checker == 1: print "Test 8 OK" else: print "Test 8 not OK"
def test5(): print "Creating a game 5x5. Player O go first." game = Game(5, 5, 2, 4) checker = 1 try: print "Player X wants to mark at (0, 0)" game.mark(1, (0, 0)) except: pass if game.getBoard().getCellStatus((0, 0)) == 1: print "mark() not OK." print "Player X should not have right to mark, as it's not his turn." checker = 0 try: print "Player O marks at (1, 1)" game.mark(2, (1, 1)) game.draw() except: print "mark() not OK. Please check your code." return if game.getBoard().getCellStatus((1, 1)) != 2: print "mark() not OK. Please check your code." checker = 0 try: print "Player X wants to mark at (1, 1)" game.mark(1, (1, 1)) except: pass if game.getBoard().getCellStatus((1, 1)) == 1: print "mark() not OK." print "Player X should not have right to mark, as the cell is already occupied." checker = 0 print "Try deactivating the game" game.deactivate() try: print "Player X wants to mark at (1, 2)" game.mark(1, (1, 2)) except: pass if game.getBoard().getCellStatus((1, 2)) == 1: print "mark() not OK." print "Player X should not have right to mark, as the game has finished." checker = 0 print "Reactivating the game" game.activate() if game.getTurn() == 2: game.switchTurn() try: print "Player X wants to mark at (1, 2)" game.mark(1, (1, 2)) game.draw() except: pass if game.getBoard().getCellStatus((1, 2)) != 1: print "mark() not OK. Please check your code." checker = 0 if checker == 1: print "Test 5 OK" else: print "Test 5 not OK"