From aca4b2521072561e3dfb3ce0e5034f5c5d76c8b3 Mon Sep 17 00:00:00 2001 From: Ida Massow Date: Sat, 2 Jul 2011 12:21:10 +0200 Subject: =?UTF-8?q?Tests=20f=C3=BCr=20die=20Control=20Klasse,=20jetzt=20zu?= =?UTF-8?q?=2091.9=20Prozent=20abgedeckt?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@601 72836036-5685-4462-b002-a69064685172 --- test/jrummikub/control/ApplicationControlTest.java | 136 +++++++++++++++++++++ 1 file changed, 136 insertions(+) create mode 100644 test/jrummikub/control/ApplicationControlTest.java (limited to 'test/jrummikub/control/ApplicationControlTest.java') diff --git a/test/jrummikub/control/ApplicationControlTest.java b/test/jrummikub/control/ApplicationControlTest.java new file mode 100644 index 0000000..88f365a --- /dev/null +++ b/test/jrummikub/control/ApplicationControlTest.java @@ -0,0 +1,136 @@ +package jrummikub.control; + +import static org.junit.Assert.assertFalse; +import static org.junit.Assert.assertSame; +import static org.junit.Assert.assertTrue; +import jrummikub.util.LoginData; +import jrummikub.view.IQuitWarningPanel.QuitMode; +import jrummikub.view.MockView; + +import org.junit.Before; +import org.junit.Test; + +/** + * Tests for the testable parts of the application control + */ +public class ApplicationControlTest { + ApplicationControl testAppControl; + MockView view; + + /** */ + @Before + public void setup() { + view = new MockView(); + } + + /** */ + @Test + public void enableSaving() { + assertFalse(view.savingEnabled); + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + assertTrue(view.isSettingsPanelVisible); + view.settingsPanel.startGameEvent.emit(); + assertFalse(view.isSettingsPanelVisible); + assertTrue(view.savingEnabled); + } + + /** */ + @Test + public void pauseTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + view.settingsPanel.startGameEvent.emit(); + view.getPlayerPanel().pauseEvent.emit(); + // assertTrue(view.isPaused); + } + + /** */ + @Test + public void networkTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + + view.networkGameEvent.emit(); + assertTrue(view.isLoginPanelVisible); + } + + /** */ + @Test + public void networkFromRunningGameTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + view.settingsPanel.startGameEvent.emit(); + + view.networkGameEvent.emit(); + assertTrue(view.isQuitWarningPanelVisible); + assertSame(QuitMode.QUIT_GAME, view.getQuitWarningPanel().getQuitMode()); + view.getQuitWarningPanel().quitEvent.emit(); + assertTrue(view.isLoginPanelVisible); + } + + /** */ + @Test + public void newGameFromNetworkTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + + view.networkGameEvent.emit(); + assertTrue(view.isLoginPanelVisible); + + LoginData data = new LoginData("Horst", "server", "horstspw", "channel"); + view.loginPanel.loginEvent.emit(data); + assertTrue(view.isConnectPanelVisible); + view.menuNewGameEvent.emit(); + assertTrue(view.isQuitWarningPanelVisible); + assertSame(QuitMode.QUIT_GAME, view.getQuitWarningPanel().getQuitMode()); + view.getQuitWarningPanel().quitEvent.emit(); + + assertFalse(view.isConnectPanelVisible); + assertTrue(view.isSettingsPanelVisible); + } + + /** */ + @Test + public void loadTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + + view.loadEvent.emit(); + assertFalse(view.isQuitWarningPanelVisible); + } + + /** */ + @Test + public void loadFromRunningGameTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + view.settingsPanel.startGameEvent.emit(); + + view.loadEvent.emit(); + assertTrue(view.isQuitWarningPanelVisible); + assertSame(QuitMode.QUIT_GAME, view.getQuitWarningPanel().getQuitMode()); + view.getQuitWarningPanel().quitEvent.emit(); + // TODO asserte was + } + + /** */ + @Test + public void newGameFromRunningGameTest() { + testAppControl = new ApplicationControl(view); + testAppControl.startApplication(); + view.settingsPanel.startGameEvent.emit(); + + view.menuNewGameEvent.emit(); + assertTrue(view.isQuitWarningPanelVisible); + assertSame(QuitMode.QUIT_GAME, view.getQuitWarningPanel().getQuitMode()); + view.getQuitWarningPanel().cancelEvent.emit(); + assertFalse(view.isQuitWarningPanelVisible); + + view.menuNewGameEvent.emit(); + assertTrue(view.isQuitWarningPanelVisible); + assertSame(QuitMode.QUIT_GAME, view.getQuitWarningPanel().getQuitMode()); + view.getQuitWarningPanel().quitEvent.emit(); + assertTrue(view.isSettingsPanelVisible); + } +} -- cgit v1.2.3