729debaad1451d029591ecd361e6385648866747
[portal.git] / ecomp-portal-BE-os / src / test / java / org / openecomp / portalapp / portal / controller / ECOMPLogoutControllerTest.java
1 package org.openecomp.portalapp.portal.controller;
2
3 import static org.junit.Assert.*;
4
5 import javax.servlet.ServletRequestWrapper;
6 import javax.servlet.http.HttpServletRequest;
7 import javax.servlet.http.HttpServletResponse;
8
9 import org.junit.Before;
10 import org.junit.Test;
11 import org.junit.runner.RunWith;
12 import org.mockito.InjectMocks;
13 import org.mockito.Mock;
14 import org.mockito.Mockito;
15 import org.mockito.MockitoAnnotations;
16 import org.mockito.stubbing.OngoingStubbing;
17 import org.openecomp.portalapp.controller.ECOMPLogoutController;
18 import org.openecomp.portalapp.portal.service.DashboardSearchService;
19 import org.openecomp.portalapp.portal.service.DashboardSearchServiceImpl;
20 import org.openecomp.portalapp.portal.framework.MockEPUser;
21 import org.openecomp.portalapp.portal.utils.EPCommonSystemProperties;
22 import org.openecomp.portalapp.portal.framework.MockitoTestSuite;
23 import org.openecomp.portalapp.util.EPUserUtils;
24 import org.powermock.api.mockito.PowerMockito;
25 import org.powermock.core.classloader.annotations.PrepareForTest;
26 import org.powermock.modules.junit4.PowerMockRunner;
27 import org.springframework.core.NamedThreadLocal;
28 import org.springframework.web.context.request.RequestAttributes;
29 import org.springframework.web.context.request.RequestContextHolder;
30 import org.springframework.web.context.request.ServletRequestAttributes;
31 import org.springframework.web.servlet.ModelAndView;
32
33 @RunWith(PowerMockRunner.class)
34 @PrepareForTest({EPUserUtils.class, EPCommonSystemProperties.class,RequestContextHolder.class,RequestAttributes.class})
35 public class ECOMPLogoutControllerTest {
36
37         @Mock
38         DashboardSearchService searchService = new DashboardSearchServiceImpl();
39         
40         @InjectMocks
41         ECOMPLogoutController ecompLogoutController = new ECOMPLogoutController();
42
43         @Before
44         public void setup() {
45                 MockitoAnnotations.initMocks(this);
46         }
47
48         MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
49
50         HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
51         HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse();
52
53         NullPointerException nullPointerException = new NullPointerException();
54         
55         MockEPUser mockUser = new MockEPUser();
56         
57         @Mock
58         RequestContextHolder requestContextHolder;
59         
60         @Mock
61         RequestAttributes requestAttributes;
62         
63         @Test
64         public void logOutTest() throws Exception{
65                 ModelAndView actualData = new ModelAndView("redirect:login.htm");
66                 ModelAndView expedtedData = null;
67                 ThreadLocal<RequestAttributes> requestAttributesHolder =
68                                 new NamedThreadLocal<RequestAttributes>("Request attributes");
69                 RequestAttributes requestAttributes = new ServletRequestAttributes(mockedRequest);
70                 PowerMockito.mockStatic(RequestContextHolder.class);
71                 PowerMockito.mockStatic(RequestAttributes.class);
72             Mockito.when((ServletRequestAttributes)RequestContextHolder.currentRequestAttributes()).thenReturn((ServletRequestAttributes) requestAttributes);
73                 expedtedData = ecompLogoutController.logOut(mockedRequest, mockedResponse);
74                 assertEquals(actualData.getViewName(),expedtedData.getViewName());
75         }
76         
77 }