Implemented end of turn event handling, tested
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@112 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
3cd6dee363
commit
ac08bc112f
2 changed files with 25 additions and 3 deletions
|
@ -5,6 +5,7 @@ import jrummikub.model.IHand;
|
||||||
import jrummikub.model.ITable;
|
import jrummikub.model.ITable;
|
||||||
import jrummikub.util.Event;
|
import jrummikub.util.Event;
|
||||||
import jrummikub.util.IEvent;
|
import jrummikub.util.IEvent;
|
||||||
|
import jrummikub.util.IListener;
|
||||||
import jrummikub.view.IView;
|
import jrummikub.view.IView;
|
||||||
|
|
||||||
public class TurnControl {
|
public class TurnControl {
|
||||||
|
@ -19,6 +20,7 @@ public class TurnControl {
|
||||||
this.hand = hand;
|
this.hand = hand;
|
||||||
this.table = table;
|
this.table = table;
|
||||||
this.view = view;
|
this.view = view;
|
||||||
|
setup();
|
||||||
}
|
}
|
||||||
|
|
||||||
/** Test only constructor **/
|
/** Test only constructor **/
|
||||||
|
@ -28,6 +30,20 @@ public class TurnControl {
|
||||||
this.table = table;
|
this.table = table;
|
||||||
this.view = view;
|
this.view = view;
|
||||||
this.timer = testTimer;
|
this.timer = testTimer;
|
||||||
|
setup();
|
||||||
|
}
|
||||||
|
|
||||||
|
private void setup() {
|
||||||
|
|
||||||
|
IListener endOfTurnListener = new IListener() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void handle() {
|
||||||
|
endOfTurn();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
timer.getTimeRunOutEvent().add(endOfTurnListener);
|
||||||
|
view.getPlayerPanel().getEndTurnEvent().add(endOfTurnListener);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void sortByValue() {
|
private void sortByValue() {
|
||||||
|
@ -38,6 +54,11 @@ public class TurnControl {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void endOfTurn() {
|
||||||
|
timer.stopTimer();
|
||||||
|
endOfTurnEvent.emit();
|
||||||
|
}
|
||||||
|
|
||||||
public IEvent getEndOfTurnEvent() {
|
public IEvent getEndOfTurnEvent() {
|
||||||
return endOfTurnEvent;
|
return endOfTurnEvent;
|
||||||
}
|
}
|
||||||
|
|
|
@ -19,7 +19,8 @@ import static org.junit.Assert.*;
|
||||||
public class TurnControlTest {
|
public class TurnControlTest {
|
||||||
|
|
||||||
class MockTimer implements ITurnTimer {
|
class MockTimer implements ITurnTimer {
|
||||||
boolean timerRunning;
|
public boolean timerRunning;
|
||||||
|
public Event timeRunOutEvent = new Event();
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void startTimer() {
|
public void startTimer() {
|
||||||
|
@ -33,7 +34,7 @@ public class TurnControlTest {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IEvent getTimeRunOutEvent() {
|
public IEvent getTimeRunOutEvent() {
|
||||||
return null;
|
return timeRunOutEvent;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -82,7 +83,7 @@ public class TurnControlTest {
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
mockView.playerPanel.endTurnEvent.emit();
|
mockTimer.timeRunOutEvent.emit();
|
||||||
|
|
||||||
assertTrue(eventFired);
|
assertTrue(eventFired);
|
||||||
assertFalse(mockTimer.timerRunning);
|
assertFalse(mockTimer.timerRunning);
|
||||||
|
|
Reference in a new issue