Test anlegen nochmal überarbeitet, echter Table wird statt Mock-Table genutzt
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@176 72836036-5685-4462-b002-a69064685172
This commit is contained in:
parent
cfc674eb3d
commit
35cd080bcd
1 changed files with 79 additions and 63 deletions
|
@ -4,6 +4,7 @@ import static org.junit.Assert.*;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
|
import java.util.HashMap;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import jrummikub.model.MockHand;
|
import jrummikub.model.MockHand;
|
||||||
|
@ -12,6 +13,7 @@ import jrummikub.model.Position;
|
||||||
import jrummikub.model.Stone;
|
import jrummikub.model.Stone;
|
||||||
import jrummikub.model.StoneColor;
|
import jrummikub.model.StoneColor;
|
||||||
import jrummikub.model.StoneSet;
|
import jrummikub.model.StoneSet;
|
||||||
|
import jrummikub.model.Table;
|
||||||
import jrummikub.util.Event;
|
import jrummikub.util.Event;
|
||||||
import jrummikub.util.IEvent;
|
import jrummikub.util.IEvent;
|
||||||
import jrummikub.util.IListener;
|
import jrummikub.util.IListener;
|
||||||
|
@ -24,6 +26,11 @@ import org.junit.Test;
|
||||||
import static jrummikub.model.StoneColor.*;
|
import static jrummikub.model.StoneColor.*;
|
||||||
|
|
||||||
public class TurnControlTest {
|
public class TurnControlTest {
|
||||||
|
static class AccessibleTable extends Table{
|
||||||
|
StoneSet[] getSetArray(){
|
||||||
|
return objects.keySet().toArray(new StoneSet[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
class MockTimer implements ITurnTimer {
|
class MockTimer implements ITurnTimer {
|
||||||
public boolean timerRunning = false;
|
public boolean timerRunning = false;
|
||||||
|
@ -406,6 +413,9 @@ public class TurnControlTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAddLeft() {
|
public void testAddLeft() {
|
||||||
|
AccessibleTable table=new AccessibleTable();
|
||||||
|
TurnControl turnControl=new TurnControl(mockHand, table, mockView, mockTimer);
|
||||||
|
turnControl.startTurn();
|
||||||
Stone blueOne = new Stone(1, BLUE);
|
Stone blueOne = new Stone(1, BLUE);
|
||||||
Stone redOne = new Stone(1, RED);
|
Stone redOne = new Stone(1, RED);
|
||||||
Stone blackOne = new Stone(1, BLACK);
|
Stone blackOne = new Stone(1, BLACK);
|
||||||
|
@ -423,8 +433,8 @@ public class TurnControlTest {
|
||||||
blackOne, redTwo, redThree, redFour, blackTwo, blackThree));
|
blackOne, redTwo, redThree, redFour, blackTwo, blackThree));
|
||||||
StoneSet oldSet2 = new StoneSet(Arrays.asList(blueTwo, blackFour,
|
StoneSet oldSet2 = new StoneSet(Arrays.asList(blueTwo, blackFour,
|
||||||
blackFive));
|
blackFive));
|
||||||
mockTable.drop(oldSet1, new Position(0, 0));
|
table.drop(oldSet1, new Position(0, 0));
|
||||||
mockTable.drop(oldSet2, new Position(0, 0));
|
table.drop(oldSet2, new Position(0, 0));
|
||||||
mockHand.drop(blueThree, new Position(0, 0));
|
mockHand.drop(blueThree, new Position(0, 0));
|
||||||
mockHand.drop(blueFour, new Position(0, 0));
|
mockHand.drop(blueFour, new Position(0, 0));
|
||||||
mockView.playerPanel.handPanel.stoneClickEvent.emit(blueThree, false);
|
mockView.playerPanel.handPanel.stoneClickEvent.emit(blueThree, false);
|
||||||
|
@ -435,14 +445,14 @@ public class TurnControlTest {
|
||||||
assertEquals(1, mockHand.getSize());
|
assertEquals(1, mockHand.getSize());
|
||||||
assertSame(mockHand.stones.get(0), blueFour);
|
assertSame(mockHand.stones.get(0), blueFour);
|
||||||
// tablecheck
|
// tablecheck
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
StoneSet newSet1, newSet2;
|
StoneSet newSet1, newSet2;
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 3) {
|
if (table.getSetArray()[0].size() == 3) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 = table.getSetArray()[0];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
assertSame(oldSet2, newSet2);
|
assertSame(oldSet2, newSet2);
|
||||||
// setcheck
|
// setcheck
|
||||||
|
@ -464,13 +474,13 @@ public class TurnControlTest {
|
||||||
assertEquals(1, mockHand.getSize());
|
assertEquals(1, mockHand.getSize());
|
||||||
assertSame(mockHand.stones.get(0), blueFour);
|
assertSame(mockHand.stones.get(0), blueFour);
|
||||||
// tablecheck
|
// tablecheck
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 5) {
|
if (table.getSetArray()[0].size() == 5) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 =table.getSetArray()[0];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 =table.getSetArray()[1];
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
// setcheck1
|
// setcheck1
|
||||||
assertEquals(7, newSet1.size());
|
assertEquals(7, newSet1.size());
|
||||||
|
@ -494,13 +504,13 @@ public class TurnControlTest {
|
||||||
// handcheck
|
// handcheck
|
||||||
assertEquals(0, mockHand.getSize());
|
assertEquals(0, mockHand.getSize());
|
||||||
// tablecheck
|
// tablecheck
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 6) {
|
if (table.getSetArray()[0].size() == 6) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 = table.getSetArray()[0];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
// setcheck1
|
// setcheck1
|
||||||
assertEquals(7, newSet1.size());
|
assertEquals(7, newSet1.size());
|
||||||
|
@ -516,6 +526,9 @@ public class TurnControlTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAddRight() {
|
public void testAddRight() {
|
||||||
|
AccessibleTable table=new AccessibleTable();
|
||||||
|
TurnControl turnControl=new TurnControl(mockHand, table, mockView, mockTimer);
|
||||||
|
turnControl.startTurn();
|
||||||
Stone blueOne = new Stone(1, BLUE);
|
Stone blueOne = new Stone(1, BLUE);
|
||||||
Stone redOne = new Stone(1, RED);
|
Stone redOne = new Stone(1, RED);
|
||||||
Stone blackOne = new Stone(1, BLACK);
|
Stone blackOne = new Stone(1, BLACK);
|
||||||
|
@ -533,8 +546,8 @@ public class TurnControlTest {
|
||||||
blackOne, redTwo, redThree, redFour, blackTwo, blackThree));
|
blackOne, redTwo, redThree, redFour, blackTwo, blackThree));
|
||||||
StoneSet oldSet2 = new StoneSet(Arrays.asList(blueTwo, blackFour,
|
StoneSet oldSet2 = new StoneSet(Arrays.asList(blueTwo, blackFour,
|
||||||
blackFive));
|
blackFive));
|
||||||
mockTable.drop(oldSet1, new Position(0, 0));
|
table.drop(oldSet1, new Position(0, 0));
|
||||||
mockTable.drop(oldSet2, new Position(0, 0));
|
table.drop(oldSet2, new Position(0, 0));
|
||||||
mockHand.drop(blueThree, new Position(0, 0));
|
mockHand.drop(blueThree, new Position(0, 0));
|
||||||
mockHand.drop(blueFour, new Position(0, 0));
|
mockHand.drop(blueFour, new Position(0, 0));
|
||||||
mockView.playerPanel.handPanel.stoneClickEvent.emit(blueThree, false);
|
mockView.playerPanel.handPanel.stoneClickEvent.emit(blueThree, false);
|
||||||
|
@ -545,14 +558,14 @@ public class TurnControlTest {
|
||||||
assertEquals(1, mockHand.getSize());
|
assertEquals(1, mockHand.getSize());
|
||||||
assertSame(mockHand.stones.get(0), blueFour);
|
assertSame(mockHand.stones.get(0), blueFour);
|
||||||
// tablecheck
|
// tablecheck
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
StoneSet newSet1, newSet2;
|
StoneSet newSet1, newSet2;
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 3) {
|
if (table.getSetArray()[0].size() == 3) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 = table.getSetArray()[0];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
assertSame(oldSet2, newSet2);
|
assertSame(oldSet2, newSet2);
|
||||||
// setcheck
|
// setcheck
|
||||||
|
@ -574,13 +587,13 @@ public class TurnControlTest {
|
||||||
assertEquals(1, mockHand.getSize());
|
assertEquals(1, mockHand.getSize());
|
||||||
assertSame(mockHand.stones.get(0), blueFour);
|
assertSame(mockHand.stones.get(0), blueFour);
|
||||||
// tablecheck
|
// tablecheck
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 5) {
|
if (table.getSetArray()[0].size() == 5) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 = table.getSetArray()[0];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
// setcheck1
|
// setcheck1
|
||||||
assertEquals(7, newSet1.size());
|
assertEquals(7, newSet1.size());
|
||||||
|
@ -604,13 +617,13 @@ public class TurnControlTest {
|
||||||
// handcheck
|
// handcheck
|
||||||
assertEquals(0, mockHand.getSize());
|
assertEquals(0, mockHand.getSize());
|
||||||
// tablecheck
|
// tablecheck
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 6) {
|
if (table.getSetArray()[0].size() == 6) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 = table.getSetArray()[0];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
// setcheck1
|
// setcheck1
|
||||||
assertEquals(7, newSet1.size());
|
assertEquals(7, newSet1.size());
|
||||||
|
@ -626,6 +639,9 @@ public class TurnControlTest {
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testAddNewSet() {
|
public void testAddNewSet() {
|
||||||
|
AccessibleTable table=new AccessibleTable();
|
||||||
|
TurnControl turnControl=new TurnControl(mockHand, table, mockView, mockTimer);
|
||||||
|
turnControl.startTurn();
|
||||||
Stone blueOne = new Stone(1, BLUE);
|
Stone blueOne = new Stone(1, BLUE);
|
||||||
Stone redOne = new Stone(1, RED);
|
Stone redOne = new Stone(1, RED);
|
||||||
Stone blackOne = new Stone(1, BLACK);
|
Stone blackOne = new Stone(1, BLACK);
|
||||||
|
@ -643,8 +659,8 @@ public class TurnControlTest {
|
||||||
blackOne, redTwo, redThree, redFour, blackTwo, blackThree));
|
blackOne, redTwo, redThree, redFour, blackTwo, blackThree));
|
||||||
StoneSet oldSet2 = new StoneSet(Arrays.asList(blueTwo, blackFour,
|
StoneSet oldSet2 = new StoneSet(Arrays.asList(blueTwo, blackFour,
|
||||||
blackFive));
|
blackFive));
|
||||||
mockTable.drop(oldSet1, new Position(0, 0));
|
table.drop(oldSet1, new Position(0, 0));
|
||||||
mockTable.drop(oldSet2, new Position(0, 0));
|
table.drop(oldSet2, new Position(0, 0));
|
||||||
mockHand.drop(blueThree, new Position(0, 0));
|
mockHand.drop(blueThree, new Position(0, 0));
|
||||||
mockHand.drop(blueFour, new Position(0, 0));
|
mockHand.drop(blueFour, new Position(0, 0));
|
||||||
mockView.playerPanel.handPanel.stoneClickEvent.emit(blueThree, false);
|
mockView.playerPanel.handPanel.stoneClickEvent.emit(blueThree, false);
|
||||||
|
@ -657,33 +673,33 @@ public class TurnControlTest {
|
||||||
assertSame(blueFour, mockHand.stones.get(0));
|
assertSame(blueFour, mockHand.stones.get(0));
|
||||||
// tablecheck
|
// tablecheck
|
||||||
StoneSet newSet1, newSet2, newSet3;
|
StoneSet newSet1, newSet2, newSet3;
|
||||||
assertEquals(2, mockTable.getSize());
|
assertEquals(2, table.getSize());
|
||||||
if (mockTable.sets.get(0).getFirst().size() == 2) {
|
if (table.getSetArray()[0].size() == 2) {
|
||||||
newSet2 = mockTable.sets.get(0).getFirst();
|
newSet2 = table.getSetArray()[0];
|
||||||
if (mockTable.sets.get(1).getFirst().size() == 4) {
|
if (table.getSetArray()[1].size() == 4) {
|
||||||
newSet3 = mockTable.sets.get(1).getFirst();
|
newSet3 = table.getSetArray()[1];
|
||||||
newSet1 = mockTable.sets.get(2).getFirst();
|
newSet1 = table.getSetArray()[2];
|
||||||
} else {
|
} else {
|
||||||
newSet3 = mockTable.sets.get(2).getFirst();
|
newSet3 = table.getSetArray()[2];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
} else if (mockTable.sets.get(0).getFirst().size() == 4) {
|
} else if (table.getSetArray()[0].size() == 4) {
|
||||||
newSet3 = mockTable.sets.get(0).getFirst();
|
newSet3 = table.getSetArray()[0];
|
||||||
if (mockTable.sets.get(1).getFirst().size() == 2) {
|
if (table.getSetArray()[1].size() == 2) {
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
newSet1 = mockTable.sets.get(2).getFirst();
|
newSet1 = table.getSetArray()[2];
|
||||||
} else {
|
} else {
|
||||||
newSet2 = mockTable.sets.get(2).getFirst();
|
newSet2 = table.getSetArray()[2];
|
||||||
newSet1 = mockTable.sets.get(1).getFirst();
|
newSet1 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
newSet1 = mockTable.sets.get(0).getFirst();
|
newSet1 = table.getSetArray()[0];
|
||||||
if (mockTable.sets.get(1).getFirst().size() == 2) {
|
if (table.getSetArray()[1].size() == 2) {
|
||||||
newSet2 = mockTable.sets.get(1).getFirst();
|
newSet2 = table.getSetArray()[1];
|
||||||
newSet3 = mockTable.sets.get(2).getFirst();
|
newSet3 = table.getSetArray()[2];
|
||||||
} else {
|
} else {
|
||||||
newSet2 = mockTable.sets.get(2).getFirst();
|
newSet2 =table.getSetArray()[2];
|
||||||
newSet3 = mockTable.sets.get(1).getFirst();
|
newSet3 = table.getSetArray()[1];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Reference in a new issue