X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=ecomp-portal-BE-common%2Fsrc%2Ftest%2Fjava%2Forg%2Fonap%2Fportalapp%2Fportal%2Fcontroller%2FAppsControllerExternalRequestTest.java;h=6e32846c4010bb34c0888fd68ffe0097a761352e;hb=HEAD;hp=3a81a6f83829c47f083edd0bc1cc5b4ec6f56752;hpb=21a8761f684745bb300e075c7e98ad897ace9eed;p=portal.git diff --git a/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/controller/AppsControllerExternalRequestTest.java b/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/controller/AppsControllerExternalRequestTest.java index 3a81a6f8..6e32846c 100644 --- a/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/controller/AppsControllerExternalRequestTest.java +++ b/ecomp-portal-BE-common/src/test/java/org/onap/portalapp/portal/controller/AppsControllerExternalRequestTest.java @@ -33,7 +33,7 @@ * * ============LICENSE_END============================================ * - * ECOMP is a trademark and service mark of AT&T Intellectual Property. + * */ package org.onap.portalapp.portal.controller; @@ -51,7 +51,6 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.Mockito; import org.mockito.MockitoAnnotations; -import org.onap.portalapp.portal.controller.AppsControllerExternalRequest; import org.onap.portalapp.portal.core.MockEPUser; import org.onap.portalapp.portal.domain.EPApp; import org.onap.portalapp.portal.domain.EPUser; @@ -82,7 +81,7 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { UserService userService = new UserServiceImpl(); @InjectMocks - AppsControllerExternalRequest appsControllerExternalRequest = new AppsControllerExternalRequest(); + AppsControllerExternalRequest appsControllerExternalRequest; @Before public void setup() { @@ -132,6 +131,24 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { assertEquals(actualPortalRestResponse, expectedportalRestResponse); } + @Test + public void postPortalAdminXSSTest() { + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("Data is not valid"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + EPUser user = mockUser.mockEPUser(); + user.setEmail("“>"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(user.getOrgUserId())).thenThrow(nullPointerException); + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest + .postPortalAdmin(mockedRequest, mockedResponse, user); + assertEquals(expectedportalRestResponse, actualPortalRestResponse); + } + @Test public void postPortalAdminCreateUserIfNotFoundTest() throws Exception { PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); @@ -173,7 +190,7 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { .postPortalAdmin(mockedRequest, mockedResponse, user); assertEquals(actualPortalRestResponse, expectedportalRestResponse); } - +/*reference*/ @Test public void postPortalAdminCreateUserIfNotSuperAdminTest() throws Exception { PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); @@ -251,7 +268,7 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); OnboardingApp expectedOnboardingApp = new OnboardingApp(); - expectedOnboardingApp.id = (long) 1; + expectedOnboardingApp.setId(1l); PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest .postOnboardAppExternal(mockedRequest, mockedResponse, expectedOnboardingApp); @@ -268,13 +285,53 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); OnboardingApp expectedOnboardingApp = new OnboardingApp(); - expectedOnboardingApp.id = null; + expectedOnboardingApp.setId(null); + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest .postOnboardAppExternal(mockedRequest, mockedResponse, expectedOnboardingApp); assertEquals(actualPortalRestResponse, expectedportalRestResponse); } + + private OnboardingApp createExpectedApp() { + + OnboardingApp expectedOnboardingApp = new OnboardingApp();; + expectedOnboardingApp.setAppName("test"); + expectedOnboardingApp.setLandingPage("test.com"); + expectedOnboardingApp.setRestUrl(""); + expectedOnboardingApp.setMyLoginsAppOwner("testUser"); + expectedOnboardingApp.setRestrictedApp(false); + expectedOnboardingApp.setIsOpen(true); + expectedOnboardingApp.setIsEnabled(true); + return expectedOnboardingApp; + + } + + + @Test + public void postOnboardAppExternalXSSTest() { + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage( + "Data is not valid"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + + OnboardingApp expectedOnboardingApp = createExpectedApp(); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest + .postOnboardAppExternal(mockedRequest, mockedResponse, expectedOnboardingApp); + assertEquals(expectedportalRestResponse, actualPortalRestResponse); + + } @Test public void putOnboardAppExternalifAppNullTest() { @@ -285,13 +342,40 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); Long appId = null; OnboardingApp expectedOnboardingApp = new OnboardingApp(); - expectedOnboardingApp.id = null; - + + expectedOnboardingApp.setId(null); + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest .putOnboardAppExternal(mockedRequest, mockedResponse, appId, expectedOnboardingApp); assertEquals(actualPortalRestResponse, expectedportalRestResponse); } + @Test + public void putOnboardAppExternalXSSTest() { + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage( + "Data is not valid"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + + OnboardingApp expectedOnboardingApp = createExpectedApp(); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + + Long appId = (long) 1; + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest + .putOnboardAppExternal(mockedRequest, mockedResponse, appId, expectedOnboardingApp); + assertEquals(expectedportalRestResponse, actualPortalRestResponse); + + } + @Test public void putOnboardAppExternalIfOnboardingAppDetailsNullTest() { PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); @@ -302,9 +386,294 @@ public class AppsControllerExternalRequestTest extends MockitoTestSuite { expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); Long appId = (long) 1; OnboardingApp expectedOnboardingApp = new OnboardingApp(); - expectedOnboardingApp.id = (long) 1; + + expectedOnboardingApp.setId(1l); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest + .putOnboardAppExternal(mockedRequest, mockedResponse, appId, expectedOnboardingApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + @Test + public void putOnboardAppExternalIfOnboardingAppDetailsTest() { + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("Failed to find user: 12"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + Long appId = (long) 1; + + OnboardingApp expectedOnboardingApp = createOldOnapApp(1l); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 200); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + Mockito.when(userService.getUserByUserId(user.getOrgUserId())).thenReturn(expectedList); + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest .putOnboardAppExternal(mockedRequest, mockedResponse, appId, expectedOnboardingApp); assertEquals(actualPortalRestResponse, expectedportalRestResponse); } + + private OnboardingApp createOldOnapApp(Long id) { + + OnboardingApp oldOnboardApp = new OnboardingApp(); + oldOnboardApp.setId(id); + oldOnboardApp.setAppName("test"); + oldOnboardApp.setLandingPage("test.com"); + oldOnboardApp.setRestUrl("test1.com"); + oldOnboardApp.setMyLoginsAppOwner("12"); + oldOnboardApp.setRestrictedApp(false); + oldOnboardApp.setIsOpen(true); + oldOnboardApp.setIsEnabled(true); + oldOnboardApp.setModeOfIntegration("test"); + oldOnboardApp.setAppAck(false); + oldOnboardApp.setUsesCadi(false); + oldOnboardApp.setModeOfIntegration("test"); + oldOnboardApp.setAppAck(false); + oldOnboardApp.setUsesCadi(false); + + return oldOnboardApp; + } + + @Test + public void putOnboardAppExternalIfOnboardingAppDetailsTest2() throws Exception { + + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage(null); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.OK); + + Long appId = (long) 1; + + OnboardingApp oldOnboardApp = createOldOnapApp(1l); + + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(oldOnboardApp.getMyLoginsAppOwner())).thenReturn(expectedList); + //Mockito.when(userService.saveNewUser(user, "Yes")).thenReturn(null); + Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true); + + + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 200); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + Mockito.when(appService.modifyOnboardingApp(oldOnboardApp, user)).thenReturn(expectedFieldValidator); + //Mockito.when(portalAdminService.createPortalAdmin(user.getOrgUserId())).thenReturn(expectedFieldValidator); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest.putOnboardAppExternal(mockedRequest, mockedResponse, appId, oldOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + + @Test + public void putOnboardAppExternalTest() throws Exception { + + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("FieldsValidator [httpStatusCode=500, errorCode=null, fields=null]"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + + Long appId = (long) 1; + + OnboardingApp oldOnboardApp = createOldOnapApp(1l); + + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(oldOnboardApp.getMyLoginsAppOwner())).thenReturn(expectedList); + //Mockito.when(userService.saveNewUser(user, "Yes")).thenReturn(null); + Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true); + + + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 500); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + Mockito.when(appService.modifyOnboardingApp(oldOnboardApp, user)).thenReturn(expectedFieldValidator); + //Mockito.when(portalAdminService.createPortalAdmin(user.getOrgUserId())).thenReturn(expectedFieldValidator); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest.putOnboardAppExternal(mockedRequest, mockedResponse, appId, oldOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + @Test + public void putOnboardAppExternalIsNotSuperAdminTest() throws Exception { + + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("User lacks Portal admin role: Test"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + + Long appId = (long) 1; + + OnboardingApp oldOnboardApp = createOldOnapApp(1l); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(oldOnboardApp.getMyLoginsAppOwner())).thenReturn(expectedList); + //Mockito.when(userService.saveNewUser(user, "Yes")).thenReturn(null); + Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false); + + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 200); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + //Mockito.when(portalAdminService.createPortalAdmin(user.getOrgUserId())).thenReturn(expectedFieldValidator); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest.putOnboardAppExternal(mockedRequest, mockedResponse, appId, oldOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + @Test + public void putOnboardAppExternalWithExceptionTest() { + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("java.lang.NullPointerException"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + Long appId = (long) 1; + + OnboardingApp oldOnboardApp = createOldOnapApp(1l); + + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(oldOnboardApp.getMyLoginsAppOwner())).thenThrow(nullPointerException); + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest + .putOnboardAppExternal(mockedRequest, mockedResponse, appId,oldOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + @Test + public void postOnboardAppExternalwithExceptionTest() throws Exception { + + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("User lacks Portal admin role: Test"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + + Long appId = (long) 1; + + OnboardingApp newOnboardApp = createOldOnapApp(null); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(newOnboardApp.getMyLoginsAppOwner())).thenReturn(expectedList); + //Mockito.when(userService.saveNewUser(user, "Yes")).thenReturn(null); + Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(false); + + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 200); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + //Mockito.when(portalAdminService.createPortalAdmin(user.getOrgUserId())).thenReturn(expectedFieldValidator); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest.postOnboardAppExternal(mockedRequest, mockedResponse,newOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + @Test + public void postOnboardAppExternalIsNotSuperAdminTest() throws Exception { + + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage("Unexpected field: id"); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.ERROR); + + Long appId = (long) 1; + + OnboardingApp newOnboardApp = createOldOnapApp(1l); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(newOnboardApp.getMyLoginsAppOwner())).thenReturn(expectedList); + //Mockito.when(userService.saveNewUser(user, "Yes")).thenReturn(null); + Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true); + + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 200); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + //Mockito.when(portalAdminService.createPortalAdmin(user.getOrgUserId())).thenReturn(expectedFieldValidator); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest.postOnboardAppExternal(mockedRequest, mockedResponse,newOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + + @Test + public void postOnboardAppExternalIsSuperAdminTest() throws Exception { + + PortalRestResponse expectedportalRestResponse = new PortalRestResponse(); + expectedportalRestResponse.setMessage(null); + expectedportalRestResponse.setResponse(null); + PortalRestStatusEnum portalRestStatusEnum = null; + expectedportalRestResponse.setStatus(portalRestStatusEnum.OK); + + Long appId = (long) 1; + + OnboardingApp newOnboardApp = createOldOnapApp(null); + + EPUser user = mockUser.mockEPUser(); + user.setEmail("guestT@test.portal.onap.org"); + user.setLoginPwd("pwd"); + user.setLoginId("Test"); + List expectedList = new ArrayList(); + expectedList.add(user); + Mockito.when(EPUserUtils.getUserSession(mockedRequest)).thenReturn(user); + Mockito.when(userService.getUserByUserId(newOnboardApp.getMyLoginsAppOwner())).thenReturn(expectedList); + //Mockito.when(userService.saveNewUser(user, "Yes")).thenReturn(null); + Mockito.when(adminRolesService.isSuperAdmin(user)).thenReturn(true); + + FieldsValidator expectedFieldValidator = new FieldsValidator(); + expectedFieldValidator.setHttpStatusCode((long) 200); + expectedFieldValidator.setFields(null); + expectedFieldValidator.setErrorCode(null); + Mockito.when(appService.addOnboardingApp(newOnboardApp, user)).thenReturn(expectedFieldValidator); + + PortalRestResponse actualPortalRestResponse = appsControllerExternalRequest.postOnboardAppExternal(mockedRequest, mockedResponse,newOnboardApp); + assertEquals(actualPortalRestResponse, expectedportalRestResponse); + } + }