Modifying test cases so that it is checked whether the game winner money is the sum of all start money.
This commit is contained in:
@@ -17,15 +17,19 @@
|
|||||||
|
|
||||||
package pokerth_test;
|
package pokerth_test;
|
||||||
|
|
||||||
|
import static org.junit.Assert.assertEquals;
|
||||||
|
import static org.junit.Assert.assertFalse;
|
||||||
import static org.junit.Assert.fail;
|
import static org.junit.Assert.fail;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Iterator;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
import pokerth_protocol.NetGameInfo;
|
import pokerth_protocol.NetGameInfo;
|
||||||
import pokerth_protocol.NonZeroId;
|
import pokerth_protocol.NonZeroId;
|
||||||
|
import pokerth_protocol.PlayerResult;
|
||||||
import pokerth_protocol.PokerTHMessage;
|
import pokerth_protocol.PokerTHMessage;
|
||||||
import pokerth_protocol.StartEventAckMessage;
|
import pokerth_protocol.StartEventAckMessage;
|
||||||
import pokerth_protocol.StartEventMessage;
|
import pokerth_protocol.StartEventMessage;
|
||||||
@@ -138,8 +142,26 @@ public class RunNormalGameTest extends TestBase {
|
|||||||
fail("Invalid message.");
|
fail("Invalid message.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
long lastPlayerMoney = 0;
|
||||||
do {
|
do {
|
||||||
msg = receiveMessage();
|
msg = receiveMessage();
|
||||||
|
if (msg.isEndOfHandMessageSelected()) {
|
||||||
|
if (msg.getEndOfHandMessage().getValue().getEndOfHandType().isEndOfHandHideCardsSelected()) {
|
||||||
|
lastPlayerMoney = msg.getEndOfHandMessage().getValue().getEndOfHandType().getEndOfHandHideCards().getPlayerMoney();
|
||||||
|
} else if (msg.getEndOfHandMessage().getValue().getEndOfHandType().isEndOfHandShowCardsSelected()) {
|
||||||
|
Collection<PlayerResult> result = msg.getEndOfHandMessage().getValue().getEndOfHandType().getEndOfHandShowCards().getPlayerResults();
|
||||||
|
assertFalse(result.isEmpty());
|
||||||
|
long maxPlayerMoney = 0;
|
||||||
|
for (Iterator<PlayerResult> it = result.iterator(); it.hasNext(); ) {
|
||||||
|
PlayerResult r = it.next();
|
||||||
|
long curMoney = r.getPlayerMoney();
|
||||||
|
if (curMoney > maxPlayerMoney) {
|
||||||
|
maxPlayerMoney = curMoney;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
lastPlayerMoney = maxPlayerMoney;
|
||||||
|
}
|
||||||
|
}
|
||||||
} while (
|
} while (
|
||||||
msg.isHandStartMessageSelected()
|
msg.isHandStartMessageSelected()
|
||||||
|| msg.isDealFlopCardsMessageSelected()
|
|| msg.isDealFlopCardsMessageSelected()
|
||||||
@@ -153,6 +175,9 @@ public class RunNormalGameTest extends TestBase {
|
|||||||
if (!msg.isEndOfGameMessageSelected()) {
|
if (!msg.isEndOfGameMessageSelected()) {
|
||||||
fail("No end of game received.");
|
fail("No end of game received.");
|
||||||
}
|
}
|
||||||
|
// Last player money should be sum of all money.
|
||||||
|
assertEquals(2000 * 10, lastPlayerMoney);
|
||||||
|
|
||||||
// Now the computer players should leave.
|
// Now the computer players should leave.
|
||||||
for (int i = 0; i < 9; i++) {
|
for (int i = 0; i < 9; i++) {
|
||||||
msg = receiveMessage();
|
msg = receiveMessage();
|
||||||
|
|||||||
@@ -25,6 +25,7 @@ import static org.junit.Assert.*;
|
|||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
|
import java.util.Iterator;
|
||||||
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
@@ -175,6 +176,7 @@ public class RunRankingGameTest extends TestBase {
|
|||||||
}
|
}
|
||||||
|
|
||||||
long handNum = 0;
|
long handNum = 0;
|
||||||
|
long lastPlayerMoney = 0;
|
||||||
do {
|
do {
|
||||||
msg = receiveMessage();
|
msg = receiveMessage();
|
||||||
failOnErrorMessage(msg);
|
failOnErrorMessage(msg);
|
||||||
@@ -219,6 +221,23 @@ public class RunRankingGameTest extends TestBase {
|
|||||||
sendMessage(outMsg, s[i]);
|
sendMessage(outMsg, s[i]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else if (inMsg.isEndOfHandMessageSelected()) {
|
||||||
|
if (inMsg.getEndOfHandMessage().getValue().getEndOfHandType().isEndOfHandHideCardsSelected()) {
|
||||||
|
lastPlayerMoney = inMsg.getEndOfHandMessage().getValue().getEndOfHandType().getEndOfHandHideCards().getPlayerMoney();
|
||||||
|
} else if (inMsg.getEndOfHandMessage().getValue().getEndOfHandType().isEndOfHandShowCardsSelected()) {
|
||||||
|
Collection<PlayerResult> result = inMsg.getEndOfHandMessage().getValue().getEndOfHandType().getEndOfHandShowCards().getPlayerResults();
|
||||||
|
assertFalse(result.isEmpty());
|
||||||
|
long maxPlayerMoney = 0;
|
||||||
|
for (Iterator<PlayerResult> it = result.iterator(); it.hasNext(); ) {
|
||||||
|
PlayerResult r = it.next();
|
||||||
|
long curMoney = r.getPlayerMoney();
|
||||||
|
if (curMoney > maxPlayerMoney) {
|
||||||
|
maxPlayerMoney = curMoney;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
lastPlayerMoney = maxPlayerMoney;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} while (!msg.isEndOfGameMessageSelected());
|
} while (!msg.isEndOfGameMessageSelected());
|
||||||
@@ -228,6 +247,9 @@ public class RunRankingGameTest extends TestBase {
|
|||||||
}
|
}
|
||||||
Thread.sleep(2000);
|
Thread.sleep(2000);
|
||||||
|
|
||||||
|
// Last player money should be sum of all money.
|
||||||
|
assertEquals(10000 * 10, lastPlayerMoney);
|
||||||
|
|
||||||
// Check database entry for the game.
|
// Check database entry for the game.
|
||||||
ResultSet countAfterResult = dbStatement.executeQuery("SELECT COUNT(idgame) FROM game");
|
ResultSet countAfterResult = dbStatement.executeQuery("SELECT COUNT(idgame) FROM game");
|
||||||
countAfterResult.first();
|
countAfterResult.first();
|
||||||
|
|||||||
Reference in New Issue
Block a user