From 54fa9085e7bb5516b7d1ee3b11e6c730f2e1752f Mon Sep 17 00:00:00 2001 From: Jannis Harder Date: Tue, 3 May 2011 19:06:13 +0200 Subject: Table tests git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@85 72836036-5685-4462-b002-a69064685172 --- test/jrummikub/model/TableTest.java | 67 +++++++++++++++++++++++++++++++++++++ 1 file changed, 67 insertions(+) (limited to 'test/jrummikub/model') diff --git a/test/jrummikub/model/TableTest.java b/test/jrummikub/model/TableTest.java index 5326745..86f25ea 100644 --- a/test/jrummikub/model/TableTest.java +++ b/test/jrummikub/model/TableTest.java @@ -1,5 +1,72 @@ package jrummikub.model; +import java.util.Arrays; +import java.util.Collections; + +import org.junit.*; + +import static jrummikub.model.StoneColor.BLACK; +import static jrummikub.model.StoneColor.RED; +import static org.junit.Assert.*; + +import jrummikub.model.Table; + public class TableTest { + Table testTable; + + @Before + public void setup() { + testTable = new Table(); + } + + @Test + public void testIsValid() { + testTable.drop(new StoneSet(Arrays.asList(new Stone(RED), new Stone(BLACK), + new Stone(1, BLACK))), new Position(0,0)); + testTable.drop(new StoneSet(Arrays.asList(new Stone(1, RED), new Stone(2, RED), + new Stone(3, RED))), new Position(0,0)); + assertTrue(testTable.isValid()); + testTable.drop(new StoneSet(Arrays.asList(new Stone(5, RED))), new Position(0,0)); + assertFalse(testTable.isValid()); + } + + @Test + public void testEmptyIsValid() { + assertTrue(testTable.isValid()); + } + + @Test + @SuppressWarnings("unused") + public void testPickUpStoneGroup() { + Stone targetStone = new Stone(BLACK); + testTable.drop(new StoneSet(Arrays.asList(new Stone(RED), targetStone, + new Stone(1, BLACK))), new Position(0,0)); + assertTrue(testTable.isValid()); + testTable.pickUpStone(targetStone); + assertFalse(testTable.isValid()); + + int counter = 0; + for (Object i : testTable) { + counter++; + } + assertEquals(counter, 1); + } + + @Test + @SuppressWarnings("unused") + public void testPickUpStoneRun() { + Stone targetStone = new Stone(BLACK); + testTable.drop(new StoneSet(Arrays.asList(new Stone(1, RED), targetStone, + new Stone(3, BLACK))), new Position(0,0)); + assertTrue(testTable.isValid()); + testTable.pickUpStone(targetStone); + assertFalse(testTable.isValid()); + + int counter = 0; + for (Object i : testTable) { + counter++; + } + assertEquals(counter, 2); + } } -- cgit v1.2.3