added one more test and added some logic to the moveTest to test unwanted statechanges

This commit is contained in:
Benjamin Feyer
2024-12-02 23:10:21 +01:00
parent 2434ede556
commit ba9a60a58a

View File

@@ -199,7 +199,6 @@ public void disconnectClient(int id) {
//game.getBoard().setPieceOnBoard(); //todo
//set the host-pieces here
game.getBoard().setPieceOnBoard(28, pieceHost0); //for UC 02,14 ,15, 03.01,4
game.getBoard().setPieceOnBoard(18, pieceHost1); //for UC 1, 10, 17, 16
game.getBoard().getPlayerData().get(hostColor).addWaitingPiece(pieceClient2); //set in waitingArea fur uc 5
@@ -264,6 +263,23 @@ public void testMove() {
//sends the request-die-message
serverGameLogic.received(new RequestDieMessage(),IDHost);
//tests if the server is in selectPieceState
assertTrue(game.getBoard().getInfield()[12].isOccupied());
assertEquals(serverGameLogic.getCurrentState(),gameState);
assertEquals(gameState.getCurrentState(), turnState);
assertEquals(turnState.getCurrentState(),choosePieceState);
assertEquals(choosePieceState.getCurrentState(),selectPieceState);
//send wrong message
serverGameLogic.received(new RequestMoveMessage(pieceCyber1.getUuid()),IDHost);
//tests if there is no change
assertTrue(game.getBoard().getInfield()[12].isOccupied());
assertEquals(serverGameLogic.getCurrentState(),gameState);
assertEquals(gameState.getCurrentState(), turnState);
assertEquals(turnState.getCurrentState(),choosePieceState);
assertEquals(choosePieceState.getCurrentState(),selectPieceState);
//sends the move-message
serverGameLogic.received(new RequestMoveMessage(pieceHost2.getUuid()),IDHost);
@@ -513,7 +529,43 @@ public void testMustLeaveStartingField() {
*/
@Test
public void testDontHaveToLeaveStartingField() {
// TODO: Implement test logic for when a piece doesn't have to leave the starting field
//sends the server in firstRoll
serverGameLogic.setCurrentState(gameState);
gameState.setCurrentState(turnState);
turnState.setCurrentState(rollDiceState);
rollDiceState.setCurrentState(firstRollState);
//tests if the server is in firstRoll
assertEquals(serverGameLogic.getCurrentState(),gameState);
assertEquals(gameState.getCurrentState(), turnState);
assertEquals(turnState.getCurrentState(),rollDiceState);
assertEquals(rollDiceState.getCurrentState(),firstRollState);
//set the active player to cyberPlayer
game.setActiveColor(cyberColor);
//remove piece from cyberPlayer
game.getBoard().getPlayerData().get(cyberColor).removePieceFromWaitingArea();
//set dice to 3
game.setDie(die3);
//tests if the server is in selectPieceState
assertEquals(serverGameLogic.getCurrentState(),gameState);
assertEquals(gameState.getCurrentState(), turnState);
assertEquals(turnState.getCurrentState(),choosePieceState);
assertEquals(choosePieceState.getCurrentState(),selectPieceState);
//send requestDice-Message
serverGameLogic.received(new RequestDieMessage(),IDCyber);
//send requestMoveMessage for CyberPiece1
serverGameLogic.received(new RequestMoveMessage(pieceCyber1.getUuid()),IDCyber);
//tests if the cyberPiece1 is moved
assertTrue(game.getBoard().getInfield()[15].isOccupied());
assertEquals(game.getBoard().getInfield()[15].getOccupant(), pieceCyber1);
}
/**