/* * Copyright (C) 2006-2016 DLR, Germany * * All rights reserved * * http://www.rcenvironment.de/ */ package de.rcenvironment.core.login.internal; import org.junit.Before; import org.junit.Test; import de.rcenvironment.core.configuration.ConfigurationService; import de.rcenvironment.core.configuration.testutils.MockConfigurationService; import de.rcenvironment.core.login.LoginConfiguration; import de.rcenvironment.core.login.LoginMockFactory; import de.rcenvironment.core.login.LoginTestConstants; /** * Test cases for {@link CertificateAutoLogin}. * * @author Doreen Seider */ public class AutoLoginTest { /** * Set up. * * @throws Exception if an error occurs. **/ @Before public void setUp() throws Exception { ServiceHandler serviceHandler = new ServiceHandler(); serviceHandler.bindConfigurationService(new DummyConfigurationService()); serviceHandler.bindAuthenticationService(LoginMockFactory.getInstance().getAuthenticationServiceMock()); serviceHandler.bindNotificationService(LoginMockFactory.getInstance().getNotificationServiceMock()); serviceHandler.activate(LoginMockFactory.getInstance().getBundleContextMock()); } /** Test. */ @Test public void testLoginOut() { CertificateAutoLogin autoLogin = new CertificateAutoLogin(); autoLogin.login(); autoLogin.logout(); } /** * Test {@link ConfigurationService} implementation. * * @author Doreen Seider */ private class DummyConfigurationService extends MockConfigurationService.ThrowExceptionByDefault { @Override @SuppressWarnings("unchecked") public <T> T getConfiguration(String identifier, Class<T> clazz) { if (identifier.equals(LoginMockFactory.BUNDLE_SYMBOLIC_NAME) && clazz == LoginConfiguration.class) { LoginConfiguration config = new LoginConfiguration(); config.setAutoLogin(true); config.setAutoLoginPassword(LoginMockFactory.PASSWORD); config.setCertificateFile(LoginTestConstants.USER_1_CERTIFICATE_FILENAME); config.setKeyFile(LoginTestConstants.USER_1_KEY_FILENAME); return (T) config; } return null; } @Override public String resolveBundleConfigurationPath(String identifier, String path) { return path; } } }