This repository has been archived on 2025-03-02. You can view files and clone it, but cannot push or open issues or pull requests.
JRummikub/test/jrummikub/control/network/GameOfferControlTest.java
Ida Massow 0506b7f154 Tests fürs Netzwerk fertig und laufen
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@482 72836036-5685-4462-b002-a69064685172
2011-06-19 12:34:13 +02:00

83 lines
2.6 KiB
Java

package jrummikub.control.network;
import static org.junit.Assert.*;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
import java.awt.Color;
import java.util.UUID;
import jrummikub.model.GameSettings;
import jrummikub.model.PlayerSettings;
import jrummikub.model.PlayerSettings.Type;
import jrummikub.util.GameData;
import jrummikub.util.LoginData;
import jrummikub.view.MockView;
import jrummikub.view.ISettingsPanel.SettingsMode;
import org.junit.Before;
import org.junit.Test;
public class GameOfferControlTest {
LoginData loginData;
MockConnectionControl mockConnection;
NetworkControl networkControl;
GameJoinControl joinControl;
MockView view;
UUID id1 = UUID.randomUUID();
UUID id2 = UUID.randomUUID();
UUID id3 = UUID.randomUUID();
/** */
@Before
public void setup() {
mockConnection = new MockConnectionControl();
mockConnection.nickname = "Karl";
view = new MockView();
loginData = new LoginData("Karl", "server", "password", "channel");
networkControl = new NetworkControl(loginData, mockConnection, view);
networkControl.startNetwork();
mockConnection.connectedEvent.emit();
}
/** */
@Test
public void withdrawGameTest() {
view.gameListPanel.openNewGameEvent.emit();
assertFalse(view.isGameListPanelVisible);
assertTrue(view.isSettingsPanelVisible);
assertEquals(SettingsMode.NETWORK_SETUP,
view.settingsPanel.settingsMode);
view.settingsPanel.offerGameEvent.emit();
assertEquals(SettingsMode.NETWORK_OFFER,
view.settingsPanel.settingsMode);
view.settingsPanel.changePlayerColorEvent.emit(0, Color.PINK);
assertEquals(Color.PINK, mockConnection.playerColor);
view.settingsPanel.backEvent.emit();
assertFalse(view.isSettingsPanelVisible);
assertTrue(view.isGameListPanelVisible);
}
/** */
@Test
public void getJoinLeaveTest(){
view.gameListPanel.openNewGameEvent.emit();
view.settingsPanel.offerGameEvent.emit();
mockConnection.gameJoinEvent.emit("Berta");
assertEquals("Berta", mockConnection.offeredGame.getGameSettings().getPlayerList().get(1).getName());
assertSame(Type.NETWORK, mockConnection.offeredGame.getGameSettings().getPlayerList().get(1).getType());
mockConnection.changeColorEvent.emit("Berta", Color.BLUE);
assertEquals(Color.BLUE, mockConnection.offeredGame.getGameSettings().getPlayerList().get(1).getColor());
mockConnection.gameLeaveEvent.emit("Berta");
assertEquals("Offen", mockConnection.offeredGame.getGameSettings().getPlayerList().get(1).getName());
assertSame(Type.VACANT, mockConnection.offeredGame.getGameSettings().getPlayerList().get(1).getType());
}
}