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);