1 package org.openecomp.portalapp.portal.test.controller;
3 import static org.junit.Assert.assertEquals;
5 import javax.servlet.http.HttpServletRequest;
6 import javax.servlet.http.HttpServletResponse;
8 import org.junit.Before;
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;
30 @RunWith(PowerMockRunner.class)
31 @PrepareForTest(CipherUtil.class)
32 public class UserControllerTest extends MockitoTestSuite {
35 UserController userController = new UserController();
38 UserService userService = new UserServiceImpl();
42 MockitoAnnotations.initMocks(this);
46 EPUserUtils ePUserUtils = new EPUserUtils();
48 MockitoTestSuite mockitoTestSuite = new MockitoTestSuite();
50 HttpServletRequest mockedRequest = mockitoTestSuite.getMockedRequest();
51 HttpServletResponse mockedResponse = mockitoTestSuite.getMockedResponse();
52 NullPointerException nullPointerException = new NullPointerException();
54 MockEPUser mockUser = new MockEPUser();
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);
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());
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());
97 public void modifyLoggedinUserExceptionTest() {
98 EPUser epUser = mockUser.mockEPUser();
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);
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);