.classpath | 1
junit/rails/game/state/ActionChangeSetTest.java | 132 ++++++++++++++++++++++++
src/lib/mockito-1.9.0/mockito-all-1.9.0.jar |binary
3 files changed, 133 insertions(+)
New commits:
commit d3211b748be485c208d9a19a936f31976a7dc33d
Author: Stefan Frey <ste...@we...>
Date: Wed Jun 6 18:19:53 2012 +0200
added unit test for ActionChangeSetTest
diff --git a/junit/rails/game/state/ActionChangeSetTest.java b/junit/rails/game/state/ActionChangeSetTest.java
new file mode 100644
index 0000000..49489c1
--- /dev/null
+++ b/junit/rails/game/state/ActionChangeSetTest.java
@@ -0,0 +1,132 @@
+package rails.game.state;
+
+import static org.junit.Assert.*;
+import static org.junit.matchers.JUnitMatchers.*;
+import static org.mockito.Mockito.*;
+
+import org.junit.*;
+import org.junit.runner.RunWith;
+import org.mockito.Mock;
+import org.mockito.runners.MockitoJUnitRunner;
+
+import rails.game.Player;
+import rails.game.action.PossibleAction;
+
+@RunWith(MockitoJUnitRunner.class)
+public class ActionChangeSetTest {
+
+ @Mock
+ private Player player;
+
+ @Mock
+ private PossibleAction action;
+
+ @Mock
+ private Change change;
+
+ @Mock
+ private State state;
+
+ private ActionChangeSet changeSet;
+
+ private ActionChangeSet closedSet;
+
+ @Before
+ public void setup() {
+ when(change.getState()).thenReturn(state);
+ changeSet = new ActionChangeSet(player, action);
+
+ closedSet = new ActionChangeSet(player, action);
+ closedSet.close();
+ }
+
+ @Test
+ public void testIsUndoableByPlayer() {
+ assertTrue(changeSet.isUndoableByPlayer(player));
+ Player otherPlayer = mock(Player.class);
+ assertFalse(changeSet.isUndoableByPlayer(otherPlayer));
+ }
+
+ @Test
+ public void testActionChangeSet() {
+ assertNotNull(changeSet);
+ }
+
+ @Test
+ public void testGetPlayer() {
+ assertSame(changeSet.getPlayer(), player);
+ }
+
+ @Test
+ public void testGetAction() {
+ assertSame(changeSet.getAction(), action);
+ }
+
+ @Test
+ public void testToString() {
+ assertNotNull(changeSet.toString());
+ }
+
+ @Test
+ public void testAddChange() {
+ changeSet.addChange(change);
+ verify(change).execute();
+ verify(state).updateModels();
+ }
+
+ @Test(expected=IllegalStateException.class)
+ public void testAddChangeClosed() {
+ Change change = mock(Change.class);
+ closedSet.addChange(change);
+ }
+
+ @Test
+ public void testClose() {
+ changeSet.close();
+ assertTrue(changeSet.isClosed());
+ }
+
+ @Test
+ public void testReexecute() {
+ changeSet.addChange(change);
+ changeSet.close();
+ changeSet.reexecute();
+ verify(change, times(2)).execute();
+ verify(state, times(2)).updateModels();
+ }
+
+ @Test(expected=IllegalStateException.class)
+ public void testReexecuteOpen() {
+ changeSet.reexecute();
+ }
+
+ @Test
+ public void testUnexecute() {
+ changeSet.addChange(change);
+ changeSet.close();
+ changeSet.unexecute();
+ verify(change).execute();
+ verify(change).undo();
+ verify(state, times(2)).updateModels();
+ }
+
+ @Test(expected=IllegalStateException.class)
+ public void testUnexecuteOpen() {
+ changeSet.unexecute();
+ }
+
+ @Test
+ public void testIsEmpty() {
+ assertTrue(changeSet.isEmpty());
+ changeSet.addChange(change);
+ assertFalse(changeSet.isEmpty());
+ }
+
+ @Test
+ public void testGetStates() {
+ changeSet.addChange(change);
+ changeSet.close();
+ assertThat(changeSet.getStates(), hasItem(state));
+ }
+
+}
commit 66d56a3a2f42e08071c442a3d6352ce86842748f
Author: Stefan Frey <ste...@we...>
Date: Wed Jun 6 18:19:11 2012 +0200
added mockito library
diff --git a/.classpath b/.classpath
index 4443a89..724802d 100644
--- a/.classpath
+++ b/.classpath
@@ -16,5 +16,6 @@
<classpathentry kind="lib" path="src/lib/logback-1.0.4/logback-classic-1.0.4.jar"/>
<classpathentry kind="lib" path="src/lib/logback-1.0.4/logback-core-1.0.4.jar"/>
<classpathentry kind="lib" path="src/lib/sl4j-1.6.5/slf4j-api-1.6.5.jar"/>
+ <classpathentry kind="lib" path="src/lib/mockito-1.9.0/mockito-all-1.9.0.jar"/>
<classpathentry kind="output" path="classes"/>
</classpath>
diff --git a/src/lib/mockito-1.9.0/mockito-all-1.9.0.jar b/src/lib/mockito-1.9.0/mockito-all-1.9.0.jar
new file mode 100644
index 0000000..273fd50
Binary files /dev/null and b/src/lib/mockito-1.9.0/mockito-all-1.9.0.jar differ
|