Show initial hand succeeds
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@136 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
0318d8cee2
commit
bc827302d0
3 changed files with 31 additions and 25 deletions
|
@ -1,6 +1,5 @@
|
||||||
package jrummikub.control;
|
package jrummikub.control;
|
||||||
|
|
||||||
|
|
||||||
import jrummikub.model.IHand;
|
import jrummikub.model.IHand;
|
||||||
import jrummikub.model.ITable;
|
import jrummikub.model.ITable;
|
||||||
import jrummikub.util.Event;
|
import jrummikub.util.Event;
|
||||||
|
@ -14,7 +13,6 @@ public class TurnControl {
|
||||||
private ITurnTimer timer;
|
private ITurnTimer timer;
|
||||||
private IView view;
|
private IView view;
|
||||||
private Event endOfTurnEvent = new Event();
|
private Event endOfTurnEvent = new Event();
|
||||||
|
|
||||||
|
|
||||||
public TurnControl(IHand hand, ITable table, IView view) {
|
public TurnControl(IHand hand, ITable table, IView view) {
|
||||||
this.hand = hand;
|
this.hand = hand;
|
||||||
|
@ -23,21 +21,20 @@ public class TurnControl {
|
||||||
this.timer = new TurnTimer(view);
|
this.timer = new TurnTimer(view);
|
||||||
setup();
|
setup();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Test only constructor **/
|
/** Test only constructor **/
|
||||||
TurnControl(IHand hand, ITable table, IView view, ITurnTimer testTimer) {
|
TurnControl(IHand hand, ITable table, IView view, ITurnTimer testTimer) {
|
||||||
// TODO: change timer to interface
|
|
||||||
this.hand = hand;
|
this.hand = hand;
|
||||||
this.table = table;
|
this.table = table;
|
||||||
this.view = view;
|
this.view = view;
|
||||||
this.timer = testTimer;
|
this.timer = testTimer;
|
||||||
setup();
|
setup();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setup() {
|
private void setup() {
|
||||||
|
|
||||||
IListener endOfTurnListener = new IListener() {
|
IListener endOfTurnListener = new IListener() {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void handle() {
|
public void handle() {
|
||||||
endOfTurn();
|
endOfTurn();
|
||||||
|
@ -45,6 +42,11 @@ public class TurnControl {
|
||||||
};
|
};
|
||||||
timer.getTimeRunOutEvent().add(endOfTurnListener);
|
timer.getTimeRunOutEvent().add(endOfTurnListener);
|
||||||
view.getPlayerPanel().getEndTurnEvent().add(endOfTurnListener);
|
view.getPlayerPanel().getEndTurnEvent().add(endOfTurnListener);
|
||||||
|
|
||||||
|
view.getPlayerPanel().getHandPanel().setStones(hand.clone());
|
||||||
|
view.enableStartTurnPanel(false);
|
||||||
|
|
||||||
|
timer.startTimer();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sortByValue() {
|
private void sortByValue() {
|
||||||
|
@ -54,12 +56,12 @@ public class TurnControl {
|
||||||
private void sortByColor() {
|
private void sortByColor() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private void endOfTurn() {
|
private void endOfTurn() {
|
||||||
timer.stopTimer();
|
timer.stopTimer();
|
||||||
endOfTurnEvent.emit();
|
endOfTurnEvent.emit();
|
||||||
}
|
}
|
||||||
|
|
||||||
public IEvent getEndOfTurnEvent() {
|
public IEvent getEndOfTurnEvent() {
|
||||||
return endOfTurnEvent;
|
return endOfTurnEvent;
|
||||||
}
|
}
|
||||||
|
|
|
@ -59,14 +59,14 @@ public class TurnControlTest {
|
||||||
mockTimer = new MockTimer();
|
mockTimer = new MockTimer();
|
||||||
mockTable = new MockTable();
|
mockTable = new MockTable();
|
||||||
mockHand = new MockHand();
|
mockHand = new MockHand();
|
||||||
testControl = new TurnControl(null, mockTable, mockView, mockTimer);
|
testControl = new TurnControl(mockHand, mockTable, mockView, mockTimer);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void startTimer() {
|
public void startTimer() {
|
||||||
assertTrue(mockTimer.timerRunning);
|
assertTrue(mockTimer.timerRunning);
|
||||||
}
|
}
|
||||||
|
|
||||||
@SuppressWarnings("unchecked")
|
@SuppressWarnings("unchecked")
|
||||||
@Test
|
@Test
|
||||||
public void showInitialHand() {
|
public void showInitialHand() {
|
||||||
|
@ -74,25 +74,25 @@ public class TurnControlTest {
|
||||||
mockTimer = new MockTimer();
|
mockTimer = new MockTimer();
|
||||||
mockTable = new MockTable();
|
mockTable = new MockTable();
|
||||||
mockHand = new MockHand();
|
mockHand = new MockHand();
|
||||||
|
|
||||||
|
mockView.displayStartTurnPanel = true;
|
||||||
mockView.displayStartTurnPanel = false;
|
|
||||||
|
List<Pair<Stone, Position>> stones = Arrays.asList(
|
||||||
List<Pair<Stone, Position>> stones = Arrays.asList(new Pair<Stone, Position>(new Stone(RED), new Position(0,0)),
|
new Pair<Stone, Position>(new Stone(RED), new Position(0, 0)),
|
||||||
new Pair<Stone, Position>(new Stone(BLACK), new Position(1,0)));
|
new Pair<Stone, Position>(new Stone(BLACK), new Position(1, 0)));
|
||||||
|
|
||||||
mockHand.iterable = stones;
|
mockHand.iterable = stones;
|
||||||
|
|
||||||
testControl = new TurnControl(null, mockTable, mockView, mockTimer);
|
testControl = new TurnControl(mockHand, mockTable, mockView, mockTimer);
|
||||||
|
|
||||||
int i = 0;
|
int i = 0;
|
||||||
for (Pair<Stone, Position> pair : mockView.playerPanel.handPanel.stones) {
|
for (Pair<Stone, Position> pair : mockView.playerPanel.handPanel.stones) {
|
||||||
assertSame(stones.get(i), pair);
|
assertSame(stones.get(i), pair);
|
||||||
i++;
|
i++;
|
||||||
}
|
}
|
||||||
assertEquals(stones.size(), i);
|
assertEquals(stones.size(), i);
|
||||||
|
|
||||||
assertTrue(mockView.displayStartTurnPanel);
|
assertFalse(mockView.displayStartTurnPanel);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
|
|
|
@ -9,7 +9,7 @@ import jrummikub.util.Pair;
|
||||||
public class MockHand implements IHand {
|
public class MockHand implements IHand {
|
||||||
|
|
||||||
public List<Stone> stones = new ArrayList<Stone>();
|
public List<Stone> stones = new ArrayList<Stone>();
|
||||||
|
|
||||||
public Iterable<Pair<Stone, Position>> iterable;
|
public Iterable<Pair<Stone, Position>> iterable;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -45,6 +45,10 @@ public class MockHand implements IHand {
|
||||||
}
|
}
|
||||||
|
|
||||||
public MockHand clone() {
|
public MockHand clone() {
|
||||||
return null;
|
try {
|
||||||
|
return (MockHand) super.clone();
|
||||||
|
} catch (CloneNotSupportedException e) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Reference in a new issue