/* * ============LICENSE_START========================================== * ONAP Portal SDK * =================================================================== * Copyright © 2017 AT&T Intellectual Property. All rights reserved. * =================================================================== * * Unless otherwise specified, all software contained herein is licensed * under the Apache License, Version 2.0 (the "License"); * you may not use this software except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * Unless otherwise specified, all documentation contained herein is licensed * under the Creative Commons License, Attribution 4.0 Intl. (the "License"); * you may not use this documentation except in compliance with the License. * You may obtain a copy of the License at * * https://creativecommons.org/licenses/by/4.0/ * * Unless required by applicable law or agreed to in writing, documentation * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * * ============LICENSE_END============================================ * * ECOMP is a trademark and service mark of AT&T Intellectual Property. package org.onap.portalsdk.fw.test; import java.util.HashMap; import java.util.Map; import javax.servlet.http.HttpSession; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import org.junit.Assert; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.invocation.InvocationOnMock; import org.mockito.runners.MockitoJUnitRunner; import org.mockito.stubbing.Answer; import org.onap.portalsdk.core.onboarding.listener.PortalTimeoutHandler; @RunWith(MockitoJUnitRunner.class) public class PortalTimeoutHandlerTest extends AbstractModelTest { private final Log logger = LogFactory.getLog(PortalTimeoutHandlerTest.class); @Mock private HttpSession mockHttpSession; private Map attributes = new HashMap(); @Before public void before() { Mockito.doAnswer(new Answer() { @Override public Object answer(InvocationOnMock invocation) throws Throwable { String key = (String) invocation.getArguments()[0]; logger.debug("get for key " + key); return attributes.get(key); } }).when(mockHttpSession).getAttribute(Mockito.anyString()); Mockito.doAnswer(new Answer() { @Override public Object answer(InvocationOnMock invocation) throws Throwable { String key = (String) invocation.getArguments()[0]; logger.debug("set for key " + key); Object value = invocation.getArguments()[1]; attributes.put(key, value); return null; } }).when(mockHttpSession).setAttribute(Mockito.anyString(), Mockito.any()); } @Test public void testPortalTimeoutHandler() { Assert.assertNotNull(PortalTimeoutHandler.getInstance()); Assert.assertNotNull(PortalTimeoutHandler.getSessionMap()); PortalTimeoutHandler.sessionCreated("portalJSessionId", "jSessionId", mockHttpSession); PortalTimeoutHandler.invalidateSession("portalJSessionId"); PortalTimeoutHandler.sessionDestroyed(mockHttpSession); PortalTimeoutHandler.gatherSessionExtensions(); } } */