package jrummikub.control; import static org.junit.Assert.*; import jrummikub.util.IListener; import jrummikub.util.IListener1; import jrummikub.util.LoginData; import jrummikub.view.MockView; import org.junit.Before; import org.junit.Test; /** */ public class LoginControlTest { MockView view; LoginControl loginControl; boolean handled = false; /** */ @Before public void setup() { view = new MockView(); loginControl = new LoginControl(view, new ApplicationControl(view)); loginControl.startLogin(true); } /** */ @Test public void panelVisibleTest() { assertFalse(view.isSettingsPanelVisible); assertTrue(view.isLoginPanelVisible); assertFalse(view.isScorePanelVisible); } /** */ @Test public void loginEventTest() { loginControl.getLoginEvent().add( new IListener1() { @Override public void handle(LoginData loginData) { assertEquals("a", loginData.getUserName()); assertEquals("b", loginData.getServerName()); assertEquals("c", loginData.getPassword()); assertEquals("d", loginData.getChannelName()); handled = true; } }); view.loginPanel.loginEvent.emit(new LoginData("a", "b", "c", "d")); assertTrue(handled); assertFalse(view.isLoginPanelVisible); assertFalse(view.isScorePanelVisible); assertFalse(view.isSettingsPanelVisible); } /** */ @Test public void cancelEventTest() { loginControl.getCancelEvent().add(new IListener() { @Override public void handle() { handled = true; } }); view.loginPanel.cancelEvent.emit(); assertTrue(handled); assertFalse(view.isLoginPanelVisible); assertFalse(view.isScorePanelVisible); assertFalse(view.isSettingsPanelVisible); } }