fixes for supporting non-gui application access provisioning
[portal.git] / ecomp-portal-BE-common / src / test / java / org / onap / portalapp / portal / service / UserRolesCommonServiceImplTest.java
index fb6c325..5846fa9 100644 (file)
@@ -55,7 +55,6 @@ import java.util.TreeSet;
 import javax.servlet.http.HttpServletResponse;
 
 import org.apache.cxf.transport.http.HTTPException;
-import org.drools.core.command.assertion.AssertEquals;
 import org.hibernate.Query;
 import org.hibernate.SQLQuery;
 import org.hibernate.Session;
@@ -82,19 +81,9 @@ import org.onap.portalapp.portal.domain.EPUserAppCatalogRoles;
 import org.onap.portalapp.portal.domain.EPUserAppRoles;
 import org.onap.portalapp.portal.domain.EPUserAppRolesRequest;
 import org.onap.portalapp.portal.domain.EPUserAppRolesRequestDetail;
+import org.onap.portalapp.portal.domain.EpAppType;
 import org.onap.portalapp.portal.domain.ExternalSystemAccess;
-import org.onap.portalapp.portal.transport.AppWithRolesForUser;
-import org.onap.portalapp.portal.transport.CentralV2Role;
-import org.onap.portalapp.portal.transport.EPUserAppCurrentRoles;
-import org.onap.portalapp.portal.transport.EcompUserAppRoles;
-import org.onap.portalapp.portal.transport.ExternalRequestFieldsValidator;
-import org.onap.portalapp.portal.transport.FieldsValidator;
-import org.onap.portalapp.portal.transport.FunctionalMenuItem;
-import org.onap.portalapp.portal.transport.FunctionalMenuRole;
-import org.onap.portalapp.portal.transport.RemoteRole;
-import org.onap.portalapp.portal.transport.RemoteUserWithRoles;
-import org.onap.portalapp.portal.transport.RoleInAppForUser;
-import org.onap.portalapp.portal.transport.UserApplicationRoles;
+import org.onap.portalapp.portal.transport.*;
 import org.onap.portalapp.portal.utils.EPCommonSystemProperties;
 import org.onap.portalapp.portal.utils.EcompPortalUtils;
 import org.onap.portalapp.portal.utils.PortalConstants;
@@ -107,6 +96,7 @@ import org.onap.portalsdk.core.util.SystemProperties;
 import org.powermock.api.mockito.PowerMockito;
 import org.powermock.core.classloader.annotations.PrepareForTest;
 import org.powermock.modules.junit4.PowerMockRunner;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpEntity;
 import org.springframework.http.HttpHeaders;
 import org.springframework.http.HttpMethod;
@@ -154,6 +144,9 @@ public class UserRolesCommonServiceImplTest {
 
        @Mock
        Transaction transaction;
+       
+       @Mock
+       AdminRolesService adminRolesService;
 
        @InjectMocks
        UserRolesCommonServiceImpl userRolesCommonServiceImpl = new UserRolesCommonServiceImpl();
@@ -176,24 +169,24 @@ public class UserRolesCommonServiceImplTest {
                EPApp app = new EPApp();
                app.setName("Test");
                app.setImageUrl("test");
-               app.setDescription("test");
-               app.setNotes("test");
-               app.setUrl("test");
+               app.setAppDescription("test");
+               app.setAppNotes("test");
+               app.setLandingPage("test");
                app.setId((long) 1);
                app.setAppRestEndpoint("test");
-               app.setAlternateUrl("test");
+               app.setAlternateLandingPage("test");
                app.setName("test");
                app.setMlAppName("test");
                app.setMlAppAdminId("test");
-               app.setUsername("test");
-               app.setAppPassword("test");
+               app.setAppBasicAuthUsername("test");
+               app.setAppBasicAuthPassword("test");
                app.setOpen(false);
                app.setEnabled(false);
-               app.setCentralAuth(true);
+               app.setRolesInAAF(true);
                app.setUebKey("test");
                app.setUebSecret("test");
                app.setUebTopicName("test");
-               app.setAppType(1);
+               app.setAppType(EpAppType.GUI);
                return app;
        }
 
@@ -205,10 +198,14 @@ public class UserRolesCommonServiceImplTest {
                Mockito.when(epAppCommonServiceImpl.getApp(mockApp.getId())).thenReturn(mockApp);
                List<RoleInAppForUser> mockRoleInAppForUserList = getMockedRoleInAppUserList();
                List<CentralV2Role> mockCenV2Role = new ArrayList<>();
-               CentralV2Role cenV2Role = new CentralV2Role(1l, null, null, null, null, null, "test1", true, null,
-                               new TreeSet<>(), new TreeSet<>(), new TreeSet<>());
-               CentralV2Role cenV2Role2 = new CentralV2Role(16l, null, null, null, null, null, "test2", true, null,
-                               new TreeSet<>(), new TreeSet<>(), new TreeSet<>());
+        CentralV2Role cenV2Role = new CentralV2Role.CentralV2RoleBuilder().setId(1l).setCreated(null).setModified(null)
+                .setCreatedId(null).setModifiedId(null).setRowNum(null).setName("test1").setActive(true)
+                .setPriority(null).setRoleFunctions(new TreeSet<>()).setChildRoles(new TreeSet<>())
+                .setParentRoles(new TreeSet<>()).createCentralV2Role();
+        CentralV2Role cenV2Role2 = new CentralV2Role.CentralV2RoleBuilder().setId(16l).setCreated(null)
+                .setModified(null).setCreatedId(null).setModifiedId(null).setRowNum(null).setName("test2")
+                .setActive(true).setPriority(null).setRoleFunctions(new TreeSet<>()).setChildRoles(new TreeSet<>())
+                .setParentRoles(new TreeSet<>()).createCentralV2Role();
                mockCenV2Role.add(cenV2Role);
                mockCenV2Role.add(cenV2Role2);
                Mockito.when(externalAccessRolesServiceImpl.getRolesForApp(mockApp.getUebKey())).thenReturn(mockCenV2Role);
@@ -265,7 +262,7 @@ public class UserRolesCommonServiceImplTest {
                EPUser user = mockUser.mockEPUser();
                user.setId(1l);
                EPApp mockApp = mockApp();
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                EPRole mockEPRole = new EPRole();
                mockEPRole.setId(1l);
                mockEPRole.setName("test1");
@@ -360,15 +357,15 @@ public class UserRolesCommonServiceImplTest {
                mockEpUserList.add(user);
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                Mockito.when(epAppCommonServiceImpl.getApp(mockApp.getId())).thenReturn(mockApp);
                List<RoleInAppForUser> mockRoleInAppForUserList = new ArrayList<>();
                RoleInAppForUser mockRoleInAppForUser = new RoleInAppForUser();
-               mockRoleInAppForUser.setIsApplied(true);
+           mockRoleInAppForUser.setIsApplied(true);
                mockRoleInAppForUser.setRoleId(333l);
                mockRoleInAppForUser.setRoleName("test1");
                RoleInAppForUser mockRoleInAppForUser2 = new RoleInAppForUser();
-               mockRoleInAppForUser2.setIsApplied(true);
+           mockRoleInAppForUser2.setIsApplied(true);
                mockRoleInAppForUser2.setRoleId(777l);
                mockRoleInAppForUser2.setRoleName("test2");
                RoleInAppForUser mockRoleInAppForUser3 = new RoleInAppForUser();
@@ -447,36 +444,31 @@ public class UserRolesCommonServiceImplTest {
                                .thenReturn(mockEcompRoleArray);
                // syncAppRolesTest
 
-               Mockito.when(session.createQuery("from :name where appId = :appId"))
+               Mockito.when(session.createQuery("from EPRole where appId = :appId"))
                                .thenReturn(epRoleQuery);
 
-               Mockito.when(epRoleQuery.setParameter("name",EPRole.class.getName())).thenReturn(epRoleQuery);
                Mockito.when(epRoleQuery.setParameter("appId",mockApp.getId())).thenReturn(epRoleQuery);
 
                Mockito.doReturn(mockEPRoleList).when(epRoleQuery).list();
-               Mockito.when(session.createQuery("from :name where app.id=:appId and role_id=:roleId"))
+               Mockito.when(session.createQuery("from EPUserApp where app.id=:appId and role_id=:roleId"))
                                .thenReturn(epUserAppsQuery);
-               Mockito.when(epUserAppsQuery.setParameter("name",EPUserApp.class.getName())).thenReturn(epUserAppsQuery);
                Mockito.when(epUserAppsQuery.setParameter("appId",mockApp.getId())).thenReturn(epUserAppsQuery);
                Mockito.when(epUserAppsQuery.setParameter("roleId",15l)).thenReturn(epUserAppsQuery);
                Mockito.doReturn(mockUserRolesList).when(epUserAppsQuery).list();
 
-               Mockito.when(session.createQuery("from :name where roleId=:roleId"))
+               Mockito.when(session.createQuery("from FunctionalMenuRole where roleId=:roleId"))
                                .thenReturn(epFunctionalMenuQuery);
-               Mockito.when(epFunctionalMenuQuery.setParameter("name",FunctionalMenuRole.class.getName())).thenReturn(epFunctionalMenuQuery);
                Mockito.when(epFunctionalMenuQuery.setParameter("roleId",15l)).thenReturn(epFunctionalMenuQuery);
                Mockito.doReturn(mockFunctionalMenuRolesList).when(epFunctionalMenuQuery).list();
 
-               Mockito.when(session.createQuery("from :name where menuId=:menuId"))
+               Mockito.when(session.createQuery("from FunctionalMenuRole where menuId=:menuId"))
                                .thenReturn(epFunctionalMenuQuery2);
-               Mockito.when(epFunctionalMenuQuery2.setParameter("name",FunctionalMenuRole.class.getName())).thenReturn(epFunctionalMenuQuery2);
-               Mockito.when(epFunctionalMenuQuery2.setParameter("menuId",10l)).thenReturn(epFunctionalMenuQuery2);
+               Mockito.when(epFunctionalMenuQuery2.setParameter(Matchers.anyString(),Matchers.anyLong())).thenReturn(epFunctionalMenuQuery2);
                Mockito.doReturn(mockFunctionalMenuRolesList).when(epFunctionalMenuQuery2).list();
 
-               Mockito.when(session.createQuery("from :name where menuId=:menuId"))
+               Mockito.when(session.createQuery("from FunctionalMenuItem where menuId=:menuId"))
                                .thenReturn(epFunctionalMenuItemQuery);
-               Mockito.when(epFunctionalMenuItemQuery.setParameter("name",FunctionalMenuItem.class.getName())).thenReturn(epFunctionalMenuItemQuery);
-               Mockito.when(epFunctionalMenuItemQuery.setParameter("menuId",10l)).thenReturn(epFunctionalMenuItemQuery);
+               Mockito.when(epFunctionalMenuItemQuery.setParameter(Matchers.anyString(),Matchers.anyLong())).thenReturn(epFunctionalMenuItemQuery);
                Mockito.doReturn(mockFunctionalMenuItemList).when(epFunctionalMenuItemQuery).list();
                List<EcompRole> mockEcompRoleList2 = new ArrayList<>();
                EcompRole mockUserAppRoles = new EcompRole();
@@ -490,12 +482,14 @@ public class UserRolesCommonServiceImplTest {
                EcompRole[] mockEcompRoleArray2 = mockEcompRoleList2.toArray(new EcompRole[mockEcompRoleList2.size()]);
                Mockito.when(applicationsRestClientService.get(EcompRole[].class, mockApp.getId(),
                                String.format("/user/%s/roles", user.getOrgUserId()))).thenReturn(mockEcompRoleArray2);
-               // SyncUserRoleTest
-               Mockito.when(session
-                               .createQuery("from " + EPUser.class.getName() + " where orgUserId='" + user.getOrgUserId() + "'"))
+               
+
+               Mockito.when(session.createQuery(
+                               "from EPUser where orgUserId=:userId"))
                                .thenReturn(epUserListQuery);
+               Mockito.when(epUserListQuery.setParameter("userId","guestT")).thenReturn(epUserListQuery);
                Mockito.doReturn(mockEpUserList).when(epUserListQuery).list();
-
+               
                List<EPUserApp> mockUserRolesList2 = new ArrayList<>();
                EPUserApp mockEpUserAppRoles = new EPUserApp();
                mockEpUserAppRoles.setApp(mockApp);
@@ -503,9 +497,15 @@ public class UserRolesCommonServiceImplTest {
                mockEpUserAppRoles.setUserId(user.getId());
                mockUserRolesList2.add(mockEpUserAppRoles);
                Mockito.when(session.createQuery(
-                               "from org.onap.portalapp.portal.domain.EPUserApp where app.id=2 and role.active = 'Y' and userId=2"))
+                               "from EPUserApp where app.id=:appId and userId=:userId and role.active = 'Y'"))
                                .thenReturn(epUserRolesListQuery);
+               
+               Mockito.when(epUserRolesListQuery.setParameter("appId",2)).thenReturn(epUserRolesListQuery);
+               Mockito.when(epUserRolesListQuery.setParameter("userId",2)).thenReturn(epUserRolesListQuery);
+
                Mockito.doReturn(mockUserRolesList2).when(epUserRolesListQuery).list();
+
+               
                List<RoleInAppForUser> roleInAppForUser = userRolesCommonServiceImpl.getAppRolesForUser(2l, user.getOrgUserId(),
                                true, user);
                assertEquals(roleInAppForUser, mockRoleInAppForUserList);
@@ -525,7 +525,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setNameSpace("com.test.com");
                mockApp.setId(1l);
-               mockApp.setCentralAuth(true);
+               mockApp.setRolesInAAF(true);
                Mockito.when(epAppCommonServiceImpl.getApp(mockApp.getId())).thenReturn(mockApp);
                Mockito.when(EcompPortalUtils.checkIfRemoteCentralAccessAllowed()).thenReturn(true);
                AppWithRolesForUser mockWithRolesForUser = new AppWithRolesForUser();
@@ -699,7 +699,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setNameSpace("com.test.com");
                mockApp.setId(2l);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                Mockito.when(epAppCommonServiceImpl.getApp(mockApp.getId())).thenReturn(mockApp);
                Mockito.when(EcompPortalUtils.checkIfRemoteCentralAccessAllowed()).thenReturn(true);
                AppWithRolesForUser mockWithRolesForUser = new AppWithRolesForUser();
@@ -818,7 +818,7 @@ public class UserRolesCommonServiceImplTest {
                assertEquals(expected.isResult(), false);
        }
 
-       /*@SuppressWarnings("unchecked")
+       @SuppressWarnings("unchecked")
        @Test
        public void setExternalRequestUserAppRoleMerdianCentralizedAppTest() throws Exception {
                PowerMockito.mockStatic(SystemProperties.class);
@@ -832,7 +832,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setNameSpace("com.test.com");
                mockApp.setId(1l);
-               mockApp.setCentralAuth(true);
+               mockApp.setRolesInAAF(true);
                Mockito.when(EcompPortalUtils.checkIfRemoteCentralAccessAllowed()).thenReturn(true);
                ExternalSystemUser externalSystemUser = new ExternalSystemUser();
                List<ExternalSystemRoleApproval> mockExternalSystemRoleApprovalList = new ArrayList<>();
@@ -986,7 +986,7 @@ public class UserRolesCommonServiceImplTest {
                                .setExternalRequestUserAppRole(externalSystemUser, "POST");
                assertTrue(mockExternalRequestFieldsValidator.equals(externalRequestFieldsValidator));
        }
-*/
+
        @SuppressWarnings("unchecked")
        @Test
        public void setExternalRequestUserAppRoleMerdianNonCentralizedAppTest() throws Exception {
@@ -1000,7 +1000,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                ExternalSystemUser externalSystemUser = new ExternalSystemUser();
                List<ExternalSystemRoleApproval> mockExternalSystemRoleApprovalList = new ArrayList<>();
                ExternalSystemRoleApproval mockExternalSystemRoleApproval = new ExternalSystemRoleApproval();
@@ -1188,7 +1188,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(1l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(true);
+               mockApp.setRolesInAAF(true);
                EPUser user = mockUser.mockEPUser();
                EPUser user2 = mockUser.mockEPUser();
                user2.setActive(true);
@@ -1250,7 +1250,10 @@ public class UserRolesCommonServiceImplTest {
                mockUserApplicationRoles2.setRoles(mockRemoteRoleList2);
                mockUserApplicationRolesList.add(mockUserApplicationRoles);
                mockUserApplicationRolesList.add(mockUserApplicationRoles2);
-               Mockito.when((List<EPUser>) dataAccessService.executeNamedQuery("getActiveUsers", null, null))
+               Map<String, Object> params = new HashMap<>();
+               params.put("id", 1l);
+               params.put("active", true);
+               Mockito.when((List<EPUser>) dataAccessService.executeNamedQuery("getActiveUsersForApp", params, null))
                                .thenReturn(mockEpUserList);
                assertEquals(userRolesCommonServiceImpl.getUsersFromAppEndpoint(1l).size(),
                                mockUserApplicationRolesList.size());
@@ -1261,7 +1264,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                Mockito.when(epAppCommonServiceImpl.getApp(mockApp.getId())).thenReturn(mockApp);
                List<UserApplicationRoles> mockUserApplicationRolesNonCentralizedList = new ArrayList<>();
                UserApplicationRoles mockUserApplicationRoles = new UserApplicationRoles();
@@ -1316,7 +1319,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                EPUser user = mockUser.mockEPUser();
                AppWithRolesForUser appWithRolesForUser = new AppWithRolesForUser();
                List<RoleInAppForUser> mockRoleInAppForUserList = new ArrayList<>();
@@ -1369,7 +1372,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                List<EPRole> expected = new ArrayList<>();
                EPRole epRole = new EPRole();
                epRole.setAppId(mockApp.getId());
@@ -1398,7 +1401,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                EPUser user = mockUser.mockEPUser();
                List<EPUserApp> expected = new ArrayList<>();
                EPUserApp epUserApp = new EPUserApp();
@@ -1424,7 +1427,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                EPUser user = mockUser.mockEPUser();
                List<EPUserAppCatalogRoles> expected = new ArrayList<>();
                EPUserAppCatalogRoles epUserAppCatalogRoles = new EPUserAppCatalogRoles();
@@ -1456,7 +1459,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                EPUser user = mockUser.mockEPUser();
                List<EPUserApp> expected = new ArrayList<>();
                EPUserApp epUserApp = new EPUserApp();
@@ -1486,7 +1489,7 @@ public class UserRolesCommonServiceImplTest {
                EPApp mockApp2 = mockApp();
                mockApp.setId(2l);
                mockApp.setEnabled(true);
-               mockApp.setCentralAuth(false);
+               mockApp.setRolesInAAF(false);
                EPUser user = mockUser.mockEPUser();
                List<EPApp> mockEpAppList = new ArrayList<>();
                mockEpAppList.add(mockApp);