Adding test case for starting a normal game.

This commit is contained in:
lotodore
2010-11-12 23:34:50 +00:00
parent 7bc98689b8
commit 0da893e43c
6 changed files with 96 additions and 79 deletions
@@ -0,0 +1,65 @@
package pokerth_test;
import static org.junit.Assert.*;
import java.util.ArrayList;
import java.util.Collection;
import org.junit.Test;
import pokerth_protocol.*;
import pokerth_protocol.NetGameInfo.EndRaiseModeEnumType;
import pokerth_protocol.NetGameInfo.NetGameTypeEnumType;
import pokerth_protocol.StartEventMessage.StartEventMessageSequenceType;
public class StartNormalGameTest extends TestBase {
@Test
public void testGameStartMessage() throws Exception {
guestInit();
Collection<Integer> l = new ArrayList<Integer>();
NetGameInfo gameInfo = createGameInfo(5, EndRaiseModeEnumType.EnumType.doubleBlinds, 0, 100, GuestUser + " run normal game", l, 10, 0, 11, 20000);
sendMessage(createJoinGameRequestMsg(
gameInfo,
NetGameTypeEnumType.EnumType.normalGame,
5,
7,
""));
PokerTHMessage msg;
do {
msg = receiveMessage();
} while (msg.isPlayerListMessageSelected() || msg.isGameListMessageSelected());
if (msg.isJoinGameReplyMessageSelected()) {
if (!msg.getJoinGameReplyMessage().getValue().getJoinGameResult().isJoinGameAckSelected()) {
fail("Could not create game!");
}
}
else {
failOnErrorMessage(msg);
fail("Invalid message.");
}
long gameId = msg.getJoinGameReplyMessage().getValue().getGameId().getValue();
StartEventMessageSequenceType gameStartType = new StartEventMessageSequenceType();
gameStartType.setGameId(new NonZeroId(gameId));
gameStartType.setFillWithComputerPlayers(true);
StartEventMessage startMsg = new StartEventMessage();
startMsg.setValue(gameStartType);
msg = new PokerTHMessage();
msg.selectStartEventMessage(startMsg);
sendMessage(msg);
do {
msg = receiveMessage();
} while (msg.isGameListMessageSelected());
if (msg.isGameStartMessageSelected()) {
failOnErrorMessage(msg);
fail("Invalid message.");
}
}
}