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/LoginControlTest.java
Matthias Schiffer 39ba50e1ac Don't reset login panel after failed login
git-svn-id: svn://sunsvr01.isp.uni-luebeck.de/swproj13/trunk@548 72836036-5685-4462-b002-a69064685172
2011-06-21 16:25:17 +02:00

71 lines
1.6 KiB
Java

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);
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<LoginData>() {
@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);
}
}