Fixed NetworkRoundControl test
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@526 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
5656d8bb82
commit
4561c8ed16
2 changed files with 73 additions and 55 deletions
|
@ -65,6 +65,8 @@ public class MockConnectionControl implements IConnectionControl {
|
||||||
public boolean turnStarted;
|
public boolean turnStarted;
|
||||||
/** */
|
/** */
|
||||||
public boolean turnEnded;
|
public boolean turnEnded;
|
||||||
|
/** */
|
||||||
|
public boolean nextPlayer;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getNickname() {
|
public String getNickname() {
|
||||||
|
@ -240,7 +242,6 @@ public class MockConnectionControl implements IConnectionControl {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void nextPlayer() {
|
public void nextPlayer() {
|
||||||
// TODO Auto-generated method stub
|
nextPlayer = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,9 @@ package jrummikub.control.network;
|
||||||
import static org.junit.Assert.*;
|
import static org.junit.Assert.*;
|
||||||
|
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
|
import java.util.Collections;
|
||||||
|
|
||||||
|
import jrummikub.control.RoundControl.InvalidTurnInfo;
|
||||||
import jrummikub.control.turn.AIControl;
|
import jrummikub.control.turn.AIControl;
|
||||||
import jrummikub.model.GameSettings;
|
import jrummikub.model.GameSettings;
|
||||||
import jrummikub.model.IPlayer;
|
import jrummikub.model.IPlayer;
|
||||||
|
@ -13,6 +15,7 @@ import jrummikub.model.Position;
|
||||||
import jrummikub.model.RoundState;
|
import jrummikub.model.RoundState;
|
||||||
import jrummikub.model.Stone;
|
import jrummikub.model.Stone;
|
||||||
import jrummikub.model.StoneColor;
|
import jrummikub.model.StoneColor;
|
||||||
|
import jrummikub.model.StoneSet;
|
||||||
import jrummikub.view.MockView;
|
import jrummikub.view.MockView;
|
||||||
|
|
||||||
import org.junit.Before;
|
import org.junit.Before;
|
||||||
|
@ -35,10 +38,8 @@ public class NetworkRoundControlTest {
|
||||||
gameSettings.getPlayerList().add(new PlayerSettings("Ida", Color.RED));
|
gameSettings.getPlayerList().add(new PlayerSettings("Ida", Color.RED));
|
||||||
gameSettings.getPlayerList().add(
|
gameSettings.getPlayerList().add(
|
||||||
new PlayerSettings("Matthias", Color.YELLOW));
|
new PlayerSettings("Matthias", Color.YELLOW));
|
||||||
gameSettings.getPlayerList().add(
|
gameSettings.getPlayerList().add(new PlayerSettings("Jannis", Color.GREEN));
|
||||||
new PlayerSettings("Jannis", Color.GREEN));
|
gameSettings.getPlayerList().add(new PlayerSettings("Bennet", Color.BLACK));
|
||||||
gameSettings.getPlayerList().add(
|
|
||||||
new PlayerSettings("Bennet", Color.BLACK));
|
|
||||||
|
|
||||||
gameSettings.getPlayerList().get(1).setType(Type.COMPUTER);
|
gameSettings.getPlayerList().get(1).setType(Type.COMPUTER);
|
||||||
gameSettings.getPlayerList().get(2).setType(Type.NETWORK);
|
gameSettings.getPlayerList().get(2).setType(Type.NETWORK);
|
||||||
|
@ -50,8 +51,7 @@ public class NetworkRoundControlTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testHostRound() {
|
public void testHostRound() {
|
||||||
connectionControl.nickname = gameSettings.getPlayerList().get(0)
|
connectionControl.nickname = gameSettings.getPlayerList().get(0).getName();
|
||||||
.getName();
|
|
||||||
|
|
||||||
testRoundState = new RoundState(gameSettings, null);
|
testRoundState = new RoundState(gameSettings, null);
|
||||||
testRound = new NetworkRoundControl(testRoundState, view,
|
testRound = new NetworkRoundControl(testRoundState, view,
|
||||||
|
@ -67,8 +67,8 @@ public class NetworkRoundControlTest {
|
||||||
IPlayer player = testRoundState.getNthPlayer(i);
|
IPlayer player = testRoundState.getNthPlayer(i);
|
||||||
assertSame(gameSettings.getPlayerList().get(i),
|
assertSame(gameSettings.getPlayerList().get(i),
|
||||||
player.getPlayerSettings());
|
player.getPlayerSettings());
|
||||||
assertEquals(gameSettings.getNumberOfStonesDealt(), player
|
assertEquals(gameSettings.getNumberOfStonesDealt(), player.getHand()
|
||||||
.getHand().getSize());
|
.getSize());
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < 4; ++i) {
|
for (int i = 0; i < 4; ++i) {
|
||||||
|
@ -80,8 +80,7 @@ public class NetworkRoundControlTest {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(0),
|
assertSame(testRoundState.getNthPlayer(0), testRoundState.getActivePlayer());
|
||||||
testRoundState.getActivePlayer());
|
|
||||||
assertTrue(connectionControl.turnStarted);
|
assertTrue(connectionControl.turnStarted);
|
||||||
connectionControl.turnStarted = false;
|
connectionControl.turnStarted = false;
|
||||||
|
|
||||||
|
@ -92,8 +91,11 @@ public class NetworkRoundControlTest {
|
||||||
assertTrue(connectionControl.turnEnded);
|
assertTrue(connectionControl.turnEnded);
|
||||||
connectionControl.turnEnded = false;
|
connectionControl.turnEnded = false;
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(1),
|
assertTrue(connectionControl.nextPlayer);
|
||||||
testRoundState.getActivePlayer());
|
connectionControl.nextPlayer = false;
|
||||||
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(1), testRoundState.getActivePlayer());
|
||||||
assertTrue(connectionControl.turnStarted);
|
assertTrue(connectionControl.turnStarted);
|
||||||
connectionControl.turnStarted = false;
|
connectionControl.turnStarted = false;
|
||||||
|
|
||||||
|
@ -101,104 +103,119 @@ public class NetworkRoundControlTest {
|
||||||
assertTrue(connectionControl.turnEnded);
|
assertTrue(connectionControl.turnEnded);
|
||||||
connectionControl.turnEnded = false;
|
connectionControl.turnEnded = false;
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(2),
|
assertTrue(connectionControl.nextPlayer);
|
||||||
testRoundState.getActivePlayer());
|
connectionControl.nextPlayer = false;
|
||||||
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(2), testRoundState.getActivePlayer());
|
||||||
assertTrue(connectionControl.turnStarted);
|
assertTrue(connectionControl.turnStarted);
|
||||||
connectionControl.turnStarted = false;
|
connectionControl.turnStarted = false;
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit();
|
connectionControl.turnStartEvent.emit();
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
|
|
||||||
connectionControl.turnEndEvent.emit(testRoundState);
|
connectionControl.turnEndEvent.emit(testRoundState, new InvalidTurnInfo(
|
||||||
|
testRoundState.getTable(), null, Collections.<StoneSet> emptyList()));
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(3),
|
assertFalse(connectionControl.nextPlayer);
|
||||||
testRoundState.getActivePlayer());
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(3), testRoundState.getActivePlayer());
|
||||||
assertFalse(connectionControl.turnStarted);
|
assertFalse(connectionControl.turnStarted);
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
connectionControl.turnStartEvent.emit();
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
|
|
||||||
connectionControl.turnEndEvent.emit(testRoundState.getActivePlayer()
|
connectionControl.turnEndEvent.emit(testRoundState, new InvalidTurnInfo(
|
||||||
.getHand(), testRoundState.getTable(), testRoundState
|
testRoundState.getTable(), null, Collections.<StoneSet> emptyList()));
|
||||||
.getTable());
|
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(0),
|
assertFalse(connectionControl.nextPlayer);
|
||||||
testRoundState.getActivePlayer());
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(0), testRoundState.getActivePlayer());
|
||||||
assertFalse(connectionControl.turnStarted);
|
assertFalse(connectionControl.turnStarted);
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
connectionControl.turnStartEvent.emit();
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testClientRound() {
|
public void testClientRound() {
|
||||||
connectionControl.nickname = gameSettings.getPlayerList().get(2)
|
connectionControl.nickname = gameSettings.getPlayerList().get(2).getName();
|
||||||
.getName();
|
|
||||||
|
|
||||||
testRoundState = new RoundState(gameSettings, null);
|
testRoundState = new RoundState(gameSettings, null);
|
||||||
for (int i = 0; i < 4; ++i) {
|
for (int i = 0; i < 4; ++i) {
|
||||||
IPlayer player = testRoundState.getNthPlayer(i);
|
IPlayer player = testRoundState.getNthPlayer(i);
|
||||||
|
|
||||||
player.getHand()
|
player.getHand().drop(new Stone(StoneColor.RED), new Position(0, 0));
|
||||||
.drop(new Stone(StoneColor.RED), new Position(0, 0));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
testRound = new NetworkRoundControl(null, view, connectionControl,
|
testRound = new NetworkRoundControl(null, view, connectionControl, false);
|
||||||
false);
|
|
||||||
|
|
||||||
connectionControl.turnStarted = false;
|
connectionControl.turnStarted = false;
|
||||||
connectionControl.turnEnded = false;
|
connectionControl.turnEnded = false;
|
||||||
|
|
||||||
testRound.startRound();
|
testRound.startRound();
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(0),
|
connectionControl.roundStateUpdateEvent.emit(testRoundState);
|
||||||
testRoundState.getActivePlayer());
|
|
||||||
|
assertSame(testRoundState.getNthPlayer(0), testRoundState.getActivePlayer());
|
||||||
assertFalse(connectionControl.turnStarted);
|
assertFalse(connectionControl.turnStarted);
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
connectionControl.turnStartEvent.emit();
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
|
|
||||||
connectionControl.turnEndEvent.emit(testRoundState.getActivePlayer()
|
connectionControl.turnEndEvent.emit(testRoundState, new InvalidTurnInfo(
|
||||||
.getHand(), testRoundState.getTable(), testRoundState
|
testRoundState.getTable(), null, Collections.<StoneSet> emptyList()));
|
||||||
.getTable());
|
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(1),
|
|
||||||
testRoundState.getActivePlayer());
|
|
||||||
assertFalse(connectionControl.turnStarted);
|
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
|
|
||||||
connectionControl.turnEndEvent.emit(testRoundState.getActivePlayer()
|
assertFalse(connectionControl.nextPlayer);
|
||||||
.getHand(), testRoundState.getTable(), testRoundState
|
|
||||||
.getTable());
|
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(2),
|
connectionControl.nextPlayerEvent.emit();
|
||||||
testRoundState.getActivePlayer());
|
assertSame(testRoundState.getNthPlayer(1), testRoundState.getActivePlayer());
|
||||||
assertFalse(connectionControl.turnStarted);
|
assertFalse(connectionControl.turnStarted);
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
connectionControl.turnStartEvent.emit();
|
||||||
|
assertFalse(connectionControl.turnEnded);
|
||||||
|
|
||||||
|
connectionControl.turnEndEvent.emit(testRoundState, new InvalidTurnInfo(
|
||||||
|
testRoundState.getTable(), null, Collections.<StoneSet> emptyList()));
|
||||||
|
|
||||||
|
assertFalse(connectionControl.nextPlayer);
|
||||||
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(2), testRoundState.getActivePlayer());
|
||||||
|
assertFalse(connectionControl.turnStarted);
|
||||||
|
|
||||||
|
connectionControl.turnStartEvent.emit();
|
||||||
|
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
view.playerPanel.endTurnEvent.emit();
|
view.playerPanel.endTurnEvent.emit();
|
||||||
assertTrue(connectionControl.turnEnded);
|
assertTrue(connectionControl.turnEnded);
|
||||||
connectionControl.turnEnded = false;
|
connectionControl.turnEnded = false;
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(3),
|
assertTrue(connectionControl.nextPlayer);
|
||||||
testRoundState.getActivePlayer());
|
connectionControl.nextPlayer = false;
|
||||||
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(3), testRoundState.getActivePlayer());
|
||||||
assertTrue(connectionControl.turnStarted);
|
assertTrue(connectionControl.turnStarted);
|
||||||
connectionControl.turnStarted = false;
|
connectionControl.turnStarted = false;
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
connectionControl.turnStartEvent.emit();
|
||||||
assertTrue(connectionControl.turnEnded);
|
assertTrue(connectionControl.turnEnded);
|
||||||
connectionControl.turnEnded = false;
|
connectionControl.turnEnded = false;
|
||||||
|
|
||||||
assertSame(testRoundState.getNthPlayer(0),
|
assertTrue(connectionControl.nextPlayer);
|
||||||
testRoundState.getActivePlayer());
|
connectionControl.nextPlayer = false;
|
||||||
|
|
||||||
|
connectionControl.nextPlayerEvent.emit();
|
||||||
|
assertSame(testRoundState.getNthPlayer(0), testRoundState.getActivePlayer());
|
||||||
assertTrue(connectionControl.turnStarted);
|
assertTrue(connectionControl.turnStarted);
|
||||||
connectionControl.turnStarted = false;
|
connectionControl.turnStarted = false;
|
||||||
|
|
||||||
connectionControl.turnStartEvent.emit(testRoundState);
|
connectionControl.turnStartEvent.emit();
|
||||||
assertFalse(connectionControl.turnEnded);
|
assertFalse(connectionControl.turnEnded);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue