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 PortalRestStatusEnum enu = null;
64 expectedResponse.setStatus(enu.ERROR);
65 PortalRestResponse<ProfileDetail> response = userController.getLoggedinUser(mockedRequest);
66 assertEquals(response, expectedResponse);
70 public void getLoggedinUserTest() throws Exception {
71 EPUser epUser = mockUser.mockEPUser();
72 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
73 PortalRestResponse<ProfileDetail> expectedResponse = new PortalRestResponse<ProfileDetail>();
74 expectedResponse.setMessage("success");
75 ProfileDetail profileDetail = new ProfileDetail();
76 expectedResponse.setResponse(profileDetail);
77 PortalRestStatusEnum enu = null;
78 expectedResponse.setStatus(enu.OK);
79 PowerMockito.mockStatic(CipherUtil.class);
80 Mockito.when(CipherUtil.decrypt(epUser.getLoginPwd())).thenReturn("Password");
81 PortalRestResponse<ProfileDetail> response = userController.getLoggedinUser(mockedRequest);
82 assertEquals(response.getMessage(), expectedResponse.getMessage());
83 assertEquals(response.getStatus(), expectedResponse.getStatus());
87 public void modifyLoggedinUserIfProfileNullTest() {
88 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
89 expectedResponse.setMessage("java.lang.NullPointerException");
90 expectedResponse.setResponse(null);
91 PortalRestStatusEnum enu = null;
92 expectedResponse.setStatus(enu.ERROR);
93 ProfileDetail profileDetail = null;
94 PortalRestResponse<String> actualResponse = userController.modifyLoggedinUser(mockedRequest, profileDetail);
95 assertEquals(actualResponse, expectedResponse);
96 assertEquals(actualResponse.getStatus(), expectedResponse.getStatus());
100 public void modifyLoggedinUserExceptionTest() {
101 EPUser epUser = mockUser.mockEPUser();
103 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
104 expectedResponse.setMessage(
105 "java.lang.ClassCastException: com.sun.crypto.provider.AESCipher$General cannot be cast to javax.crypto.CipherSpi");
106 expectedResponse.setResponse(null);
107 PortalRestStatusEnum enu = null;
108 expectedResponse.setStatus(enu.ERROR);
109 ProfileDetail profileDetail = new ProfileDetail();
110 profileDetail.setFirstName("Test_FirstName");
111 profileDetail.setLastName("Test_LastName");
112 profileDetail.setEmail("Test_Email");
113 profileDetail.setLoginId("Test_LoginId");
114 profileDetail.setLoginPassword("Test_LoginPassword");
115 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
116 PortalRestResponse<String> actualResponse = userController.modifyLoggedinUser(mockedRequest, profileDetail);
117 assertEquals(actualResponse, expectedResponse);
122 public void modifyLoggedinUserTest() throws Exception {
123 EPUser epUser = mockUser.mockEPUser();
124 PortalRestResponse<String> expectedResponse = new PortalRestResponse<String>();
125 expectedResponse.setMessage("success");
126 expectedResponse.setResponse(null);
127 PortalRestStatusEnum enu = null;
128 expectedResponse.setStatus(enu.OK);
129 ProfileDetail profileDetail = new ProfileDetail();
130 profileDetail.setFirstName("Test_FirstName");
131 profileDetail.setLastName("Test_LastName");
132 profileDetail.setEmail("Test_Email");
133 profileDetail.setLoginId("Test_LoginId");
134 profileDetail.setLoginPassword("Test_LoginPassword");
135 Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(epUser);
136 PowerMockito.mockStatic(CipherUtil.class);
137 Mockito.when(CipherUtil.decrypt(epUser.getLoginPwd())).thenReturn("Password");
138 PortalRestResponse<String> actualResponse = userController.modifyLoggedinUser(mockedRequest, profileDetail);
139 System.out.println(actualResponse);