Cleaned up RoundControl tests

git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@260 72836036-5685-4462-b002-a69064685172
This commit is contained in:
Jannis Harder 2011-05-24 01:51:49 +02:00
parent 102299d0ff
commit 2446671f7a
10 changed files with 45 additions and 105 deletions

View file

@ -1,34 +0,0 @@
package jrummikub.model;
import java.util.ArrayList;
import java.util.List;
import java.awt.Color;
public class MockGameSettings implements IGameSettings {
List<PlayerSettings> players = new ArrayList<PlayerSettings>();
int initialMeldThreshold;
public MockGameSettings() {
players.add(new PlayerSettings("Bennet", Color.BLUE));
players.add(new PlayerSettings("Matze", Color.BLACK));
players.add(new PlayerSettings("Ida", Color.RED));
players.add(new PlayerSettings("Jannis", Color.PINK));
initialMeldThreshold=30;
}
@Override
public List<PlayerSettings> getPlayerList() {
return players;
}
@Override
public void setInitialMeldThreshold(int value) {
initialMeldThreshold = value;
}
@Override
public int getInitialMeldThreshold() {
return initialMeldThreshold;
}
}

View file

@ -19,7 +19,7 @@ public class MockRoundState implements IRoundState {
/** */
public StoneHeap gameHeap;
/** */
public IGameSettings gameSettings;
public GameSettings gameSettings;
/** */
public MockRoundState() {
@ -72,7 +72,7 @@ public class MockRoundState implements IRoundState {
}
@Override
public IGameSettings getGameSettings() {
public GameSettings getGameSettings() {
return gameSettings;
}
}

View file

@ -6,7 +6,6 @@ import javax.swing.UIManager;
import jrummikub.control.GameControl;
import jrummikub.model.GameSettings;
import jrummikub.model.IGameSettings;
import jrummikub.model.PlayerSettings;
import jrummikub.view.impl.View;
@ -29,7 +28,7 @@ public class JRummikub {
} catch (Exception e) {
}
IGameSettings gameSettings = new GameSettings();
GameSettings gameSettings = new GameSettings();
gameSettings.getPlayerList().add(new PlayerSettings("Ida", Color.RED));
gameSettings.getPlayerList().add(
new PlayerSettings("Matthias", Color.YELLOW));

View file

@ -1,6 +1,6 @@
package jrummikub.control;
import jrummikub.model.IGameSettings;
import jrummikub.model.GameSettings;
import jrummikub.model.RoundState;
import jrummikub.util.IListener;
import jrummikub.view.IView;
@ -9,7 +9,7 @@ import jrummikub.view.IView;
* Controls a Game, at some point including all Rounds, starts new Rounds
*/
public class GameControl {
private IGameSettings gameSettings;
private GameSettings gameSettings;
private IView view;
private RoundControl roundControl;
@ -21,7 +21,7 @@ public class GameControl {
* @param view
* the view
*/
public GameControl(IGameSettings gameSettings, IView view) {
public GameControl(GameSettings gameSettings, IView view) {
this.gameSettings = gameSettings;
this.view = view;

View file

@ -6,7 +6,7 @@ import java.util.List;
/**
* The overall game settings
*/
public class GameSettings implements IGameSettings {
public class GameSettings {
private List<PlayerSettings> players = new ArrayList<PlayerSettings>();
private int initialMeldThreshold;
@ -18,26 +18,30 @@ public class GameSettings implements IGameSettings {
initialMeldThreshold = 30;
}
/* (non-Javadoc)
* @see jrummikub.model.IGameSettings#getPlayerList()
/**
* Returns the list containing the settings of all players
*
* @return the player settings list
*/
@Override
public List<PlayerSettings> getPlayerList() {
return players;
}
/* (non-Javadoc)
* @see jrummikub.model.IGameSettings#setInitialMeldThreshold(int)
/**
* Sets the initial meld threshold
*
* @param value
* the value to set
*/
@Override
public void setInitialMeldThreshold(int value) {
initialMeldThreshold = value;
}
/* (non-Javadoc)
* @see jrummikub.model.IGameSettings#getInitialMeldThreshold()
/**
* Returns the initial meld threshold
*
* @return the threshold
*/
@Override
public int getInitialMeldThreshold() {
return initialMeldThreshold;
}

View file

@ -1,29 +0,0 @@
package jrummikub.model;
import java.util.List;
public interface IGameSettings {
/**
* Returns the list containing the settings of all players
*
* @return the player settings list
*/
public List<PlayerSettings> getPlayerList();
/**
* Sets the initial meld threshold
*
* @param value
* the value to set
*/
public void setInitialMeldThreshold(int value);
/**
* Returns the initial meld threshold
*
* @return the threshold
*/
public int getInitialMeldThreshold();
}

View file

@ -10,7 +10,7 @@ public interface IRoundState {
*
* @return The game settings
*/
public IGameSettings getGameSettings();
public GameSettings getGameSettings();
/**
* Get the current {@link Table}

View file

@ -5,7 +5,7 @@ import java.util.List;
/** Class managing the overall and momentary RoundState */
public class RoundState implements IRoundState {
private IGameSettings gameSettings;
private GameSettings gameSettings;
private ITable table;
private List<Player> players;
@ -18,7 +18,7 @@ public class RoundState implements IRoundState {
* @param gameSettings
* the game settings
*/
public RoundState(IGameSettings gameSettings) {
public RoundState(GameSettings gameSettings) {
this.gameSettings = gameSettings;
table = new Table();
@ -68,7 +68,7 @@ public class RoundState implements IRoundState {
}
@Override
public IGameSettings getGameSettings() {
public GameSettings getGameSettings() {
return gameSettings;
}
}

View file

@ -11,18 +11,20 @@ import static org.junit.Assert.assertNull;
import static org.junit.Assert.assertSame;
import static org.junit.Assert.assertTrue;
import java.awt.Color;
import java.util.Arrays;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Set;
import jrummikub.model.GameSettings;
import jrummikub.model.Hand;
import jrummikub.model.IHand;
import jrummikub.model.ITable;
import jrummikub.model.MockGameSettings;
import jrummikub.model.MockRoundState;
import jrummikub.model.MockTable;
import jrummikub.model.PlayerSettings;
import jrummikub.model.Position;
import jrummikub.model.RoundState;
import jrummikub.model.Stone;
@ -42,6 +44,10 @@ public class RoundControlTest {
private MockRoundState testRoundState;
private RoundControl testRound;
private MockTable testTable;
private GameSettings gameSettings;
private RoundState roundState;
private RoundControl roundControl;
/**
* For each test create a round control initialized by a mock model and view
@ -56,6 +62,18 @@ public class RoundControlTest {
testTable = new MockTable();
testTable.sets.add(testRoundState.table.sets.get(0));
testRoundState.table.clonedTable = testTable;
gameSettings = new GameSettings();
gameSettings.getPlayerList().add(new PlayerSettings("Ida", Color.RED));
gameSettings.getPlayerList().add(
new PlayerSettings("Matthias", Color.YELLOW));
gameSettings.getPlayerList().add(
new PlayerSettings("Jannis", Color.GREEN));
gameSettings.getPlayerList().add(
new PlayerSettings("Bennet", Color.BLACK));
roundState = new RoundState(gameSettings);
roundControl = new RoundControl(roundState, view);
}
private void checkCorrectlyDealed() {
@ -104,9 +122,6 @@ public class RoundControlTest {
/** Threshold=30 */
@Test
public void laidOutValidTooFew() {
MockGameSettings gameSettings = new MockGameSettings();
RoundState roundState = new RoundState(gameSettings);
RoundControl roundControl = new RoundControl(roundState, view);
roundControl.startRound();
view.startTurnEvent.emit();
@ -137,9 +152,6 @@ public class RoundControlTest {
/** Threshold=30 */
@Test
public void laidOutInvalidEnough() {
MockGameSettings gameSettings = new MockGameSettings();
RoundState roundState = new RoundState(gameSettings);
RoundControl roundControl = new RoundControl(roundState, view);
roundControl.startRound();
view.startTurnEvent.emit();
@ -184,9 +196,6 @@ public class RoundControlTest {
/** Threshold=30 */
@Test
public void laidOutTooFewChangedTable() {
MockGameSettings gameSettings = new MockGameSettings();
RoundState roundState = new RoundState(gameSettings);
RoundControl roundControl = new RoundControl(roundState, view);
roundControl.startRound();
view.startTurnEvent.emit();
// Fake Turn to put stones on the table
@ -254,9 +263,6 @@ public class RoundControlTest {
/** Threshold=30 */
@Test
public void laidOutEnoughChangedTable() {
MockGameSettings gameSettings = new MockGameSettings();
RoundState roundState = new RoundState(gameSettings);
RoundControl roundControl = new RoundControl(roundState, view);
roundControl.startRound();
view.startTurnEvent.emit();
// Fake Turn to put stones on the table
@ -323,12 +329,9 @@ public class RoundControlTest {
assertEquals(2, roundState.getTable().getSize());
assertEquals(14 + 7, hand.getSize());
}
@Test
public void laidOutJustChangedTable() {
MockGameSettings gameSettings = new MockGameSettings();
RoundState roundState = new RoundState(gameSettings);
RoundControl roundControl = new RoundControl(roundState, view);
roundControl.startRound();
view.startTurnEvent.emit();
// Fake Turn to put stones on the table
@ -389,9 +392,6 @@ public class RoundControlTest {
/** Threshold=30 */
@Test
public void laidOutValid() {
MockGameSettings gameSettings = new MockGameSettings();
RoundState roundState = new RoundState(gameSettings);
RoundControl roundControl = new RoundControl(roundState, view);
roundControl.startRound();
view.startTurnEvent.emit();
// Fake Turn to put stones on the table

View file

@ -11,7 +11,7 @@ import org.junit.Test;
* Test class for {@link RoundState}
*/
public class RoundStateTest {
private IGameSettings settings = new GameSettings();
private GameSettings settings = new GameSettings();
private IRoundState testRound;
/** */