Add doc folder.
[portal.git] / ecomp-portal-BE-common-test / src / main / java / org / openecomp / portalapp / portal / test / controller / UserControllerTest.java
1 package org.openecomp.portalapp.portal.test.controller;
2
3 import static org.junit.Assert.assertEquals;
4
5 import javax.servlet.http.HttpServletRequest;
6 import javax.servlet.http.HttpServletResponse;
7
8 import org.junit.Before;
9 import org.junit.Test;
10 import org.junit.runner.RunWith;
11 import org.mockito.InjectMocks;
12 import org.mockito.Mock;
13 import org.mockito.Mockito;
14 import org.mockito.MockitoAnnotations;
15 import org.openecomp.portalapp.portal.controller.UserController;
16 import org.openecomp.portalapp.portal.domain.EPUser;
17 import org.openecomp.portalapp.portal.ecomp.model.PortalRestResponse;
18 import org.openecomp.portalapp.portal.ecomp.model.PortalRestStatusEnum;
19 import org.openecomp.portalapp.portal.service.UserService;
20 import org.openecomp.portalapp.portal.service.UserServiceImpl;
21 import org.openecomp.portalapp.portal.test.core.MockEPUser;
22 import org.openecomp.portalapp.portal.transport.ProfileDetail;
23 import org.openecomp.portalapp.test.framework.MockitoTestSuite;
24 import org.openecomp.portalapp.util.EPUserUtils;
25 import org.openecomp.portalsdk.core.onboarding.util.CipherUtil;
26 import org.powermock.api.mockito.PowerMockito;
27 import org.powermock.core.classloader.annotations.PrepareForTest;
28 import org.powermock.modules.junit4.PowerMockRunner;
29
30 @RunWith(PowerMockRunner.class)
31 @PrepareForTest(CipherUtil.class)
32 public class UserControllerTest extends MockitoTestSuite {
33
34         @InjectMocks
35         UserController userController = new UserController();
36
37         @Mock
38         UserService userService = new UserServiceImpl();
39
40         @Before
41         public void setup() {
42                 MockitoAnnotations.initMocks(this);
43         }
44
45         @Mock
46         EPUserUtils ePUserUtils = new EPUserUtils();
47
48         MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
49
50         HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
51         HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse();
52         NullPointerException nullPointerException = new NullPointerException();
53
54         MockEPUser mockUser = new MockEPUser();
55
56         @Test
57         public void getLoggedinUserExceptionTest() {
58                 EPUser epUser = mockUser.mockEPUser();
59                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
60                 PortalRestResponse<ProfileDetail> expectedResponse = new PortalRestResponse<ProfileDetail>();
61                 expectedResponse.setMessage(null);
62                 expectedResponse.setResponse(null);
63                 expectedResponse.setStatus(PortalRestStatusEnum.ERROR);
64                 PortalRestResponse<ProfileDetail> response = userController.getLoggedinUser(mockedRequest);
65                 assertEquals(response, expectedResponse);
66         }
67
68         @Test
69         public void getLoggedinUserTest() throws Exception {
70                 EPUser epUser = mockUser.mockEPUser();
71                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
72                 PortalRestResponse<ProfileDetail> expectedResponse = new PortalRestResponse<ProfileDetail>();
73                 expectedResponse.setMessage("success");
74                 ProfileDetail profileDetail = new ProfileDetail();
75                 expectedResponse.setResponse(profileDetail);
76                 expectedResponse.setStatus(PortalRestStatusEnum.OK);
77                 PowerMockito.mockStatic(CipherUtil.class);
78                 Mockito.when(CipherUtil.decrypt(epUser.getLoginPwd())).thenReturn("Password");
79                 PortalRestResponse<ProfileDetail> response = userController.getLoggedinUser(mockedRequest);
80                 assertEquals(response.getMessage(), expectedResponse.getMessage());
81                 assertEquals(response.getStatus(), expectedResponse.getStatus());
82         }
83
84         @Test
85         public void modifyLoggedinUserIfProfileNullTest() {
86                 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
87                 expectedResponse.setMessage("java.lang.NullPointerException");
88                 expectedResponse.setResponse(null);
89                 expectedResponse.setStatus(PortalRestStatusEnum.ERROR);
90                 ProfileDetail profileDetail = null;
91                 PortalRestResponse<String> actualResponse = userController.modifyLoggedinUser(mockedRequest, profileDetail);
92                 assertEquals(actualResponse, expectedResponse);
93                 assertEquals(actualResponse.getStatus(), expectedResponse.getStatus());
94         }
95
96         @Test
97         public void modifyLoggedinUserExceptionTest() {
98                 EPUser epUser = mockUser.mockEPUser();
99
100                 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
101                 expectedResponse.setMessage(
102                                 "java.lang.ClassCastException: com.sun.crypto.provider.AESCipher$General cannot be cast to javax.crypto.CipherSpi");
103                 expectedResponse.setResponse(null);
104                 expectedResponse.setStatus(PortalRestStatusEnum.ERROR);
105                 ProfileDetail profileDetail = new ProfileDetail();
106                 profileDetail.setFirstName("Test_FirstName");
107                 profileDetail.setLastName("Test_LastName");
108                 profileDetail.setEmail("Test_Email");
109                 profileDetail.setLoginId("Test_LoginId");
110                 profileDetail.setLoginPassword("Test_LoginPassword");
111                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
112                 PortalRestResponse<String> actualResponse = userController.modifyLoggedinUser(mockedRequest, profileDetail);
113                 assertEquals(actualResponse, expectedResponse);
114
115         }
116
117         /*@Test
118         public void modifyLoggedinUserTest() throws Exception {
119                 EPUser epUser = mockUser.mockEPUser();
120                 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
121                 expectedResponse.setMessage("success");
122                 expectedResponse.setResponse(null);
123                 PortalRestStatusEnum enu = null;
124                 expectedResponse.setStatus(enu.OK);
125                 ProfileDetail profileDetail = new ProfileDetail();
126                 profileDetail.setFirstName("Test_FirstName");
127                 profileDetail.setLastName("Test_LastName");
128                 profileDetail.setEmail("Test_Email");
129                 profileDetail.setLoginId("Test_LoginId");
130                 profileDetail.setLoginPassword("Test_LoginPassword");
131                 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
132                 PowerMockito.mockStatic(CipherUtil.class);
133                 Mockito.when(CipherUtil.decrypt(epUser.getLoginPwd())).thenReturn("Password");
134                 PortalRestResponse<String> actualResponse = userController.modifyLoggedinUser(mockedRequest, profileDetail);
135                 System.out.println(actualResponse);
136         }*/
137 }