diff --git a/e2e/process-services-cloud/people-group-cloud-filter-component.e2e.ts b/e2e/process-services-cloud/people-group-cloud-filter-component.e2e.ts index 8d61e293d6..b7cf48ad5e 100644 --- a/e2e/process-services-cloud/people-group-cloud-filter-component.e2e.ts +++ b/e2e/process-services-cloud/people-group-cloud-filter-component.e2e.ts @@ -19,7 +19,7 @@ import { NavigationBarPage } from '../pages/adf/navigationBarPage'; import { PeopleGroupCloudComponentPage } from '../pages/adf/demo-shell/process-services/peopleGroupCloudComponentPage'; import { GroupCloudComponentPage, PeopleCloudComponentPage, SettingsPage } from '@alfresco/adf-testing'; import { browser } from 'protractor'; -import { LoginSSOPage, IdentityService, GroupIdentityService, RolesService, ApiService } from '@alfresco/adf-testing'; +import { LoginSSOPage, IdentityService, GroupIdentityService, ApiService } from '@alfresco/adf-testing'; import resources = require('../util/resources'); describe('People Groups Cloud Component', () => { @@ -37,56 +37,37 @@ describe('People Groups Cloud Component', () => { ); let identityService: IdentityService; let groupIdentityService: GroupIdentityService; - let rolesService: RolesService; let apsUser, testUser; - let activitiUser; let noRoleUser; - let groupAps; - let groupActiviti; let groupNoRole; - let apsAdminRoleId; - let activitiAdminRoleId; - let clientActivitiAdminRoleId, clientActivitiUserRoleId; let users = []; - let groups = []; - let clientId; + let hrGroup; + let testGroup; beforeAll(async () => { await apiService.login(browser.params.identityAdmin.email, browser.params.identityAdmin.password); identityService = new IdentityService(apiService); - rolesService = new RolesService(apiService); groupIdentityService = new GroupIdentityService(apiService); - clientId = await groupIdentityService.getClientIdByApplicationName(resources.ACTIVITI7_APPS.SIMPLE_APP.name); - groupActiviti = await groupIdentityService.createIdentityGroup(); - clientActivitiAdminRoleId = await rolesService.getClientRoleIdByRoleName(groupActiviti.id, clientId, identityService.ROLES.ACTIVITI_ADMIN); - clientActivitiUserRoleId = await rolesService.getClientRoleIdByRoleName(groupActiviti.id, clientId, identityService.ROLES.ACTIVITI_USER); + hrGroup = await groupIdentityService.getGroupInfoByGroupName('hr'); + testGroup = await groupIdentityService.getGroupInfoByGroupName('testgroup'); testUser = await identityService.createIdentityUserWithRole(apiService, [identityService.ROLES.APS_USER]); apsUser = await identityService.createIdentityUserWithRole(apiService, [identityService.ROLES.APS_USER]); - activitiUser = await identityService.createIdentityUserWithRole(apiService, [identityService.ROLES.ACTIVITI_USER]); + await identityService.addUserToGroup(testUser.idIdentityService, testGroup.id); + await identityService.addUserToGroup(apsUser.idIdentityService, hrGroup.id); noRoleUser = await identityService.createIdentityUser(); - await identityService.deleteClientRole(noRoleUser.idIdentityService, clientId, clientActivitiAdminRoleId, identityService.ROLES.ACTIVITI_ADMIN); - await identityService.deleteClientRole(noRoleUser.idIdentityService, clientId, clientActivitiUserRoleId, identityService.ROLES.ACTIVITI_USER); - groupAps = await groupIdentityService.createIdentityGroup(); - apsAdminRoleId = await rolesService.getRoleIdByRoleName(identityService.ROLES.APS_ADMIN); - await groupIdentityService.assignRole(groupAps.id, apsAdminRoleId, identityService.ROLES.APS_ADMIN); - activitiAdminRoleId = await rolesService.getRoleIdByRoleName(identityService.ROLES.ACTIVITI_ADMIN); - await groupIdentityService.assignRole(groupActiviti.id, activitiAdminRoleId, identityService.ROLES.ACTIVITI_ADMIN); groupNoRole = await groupIdentityService.createIdentityGroup(); - await groupIdentityService.addClientRole(groupAps.id, clientId, clientActivitiAdminRoleId, identityService.ROLES.ACTIVITI_ADMIN); - await groupIdentityService.addClientRole(groupActiviti.id, clientId, clientActivitiAdminRoleId, identityService.ROLES.ACTIVITI_ADMIN); - users = [`${apsUser.idIdentityService}`, `${activitiUser.idIdentityService}`, `${noRoleUser.idIdentityService}`, `${testUser.idIdentityService}`]; - groups = [`${groupAps.id}`, `${groupActiviti.id}`, `${groupNoRole.id}`]; + users = [`${apsUser.idIdentityService}`, `${noRoleUser.idIdentityService}`, `${testUser.idIdentityService}`]; await settingsPage.setProviderBpmSso( browser.params.config.bpmHost, browser.params.config.oauth2.host, browser.params.config.identityHost); - await loginSSOPage.loginSSOIdentityService(testUser.email, testUser.password); + await loginSSOPage.loginSSOIdentityService(apsUser.email, apsUser.password); }); @@ -95,14 +76,8 @@ describe('People Groups Cloud Component', () => { for (let i = 0; i < users.length; i++) { await identityService.deleteIdentityUser(users[i]); } - for (let i = 0; i < groups.length; i++) { - await groupIdentityService.deleteIdentityGroup(groups[i]); - } - - await identityService.deleteIdentityUser(testUser.idIdentityService); - await identityService.deleteIdentityUser(apsUser.idIdentityService); - await identityService.deleteIdentityUser(activitiUser.idIdentityService); + await groupIdentityService.deleteIdentityGroup(groupNoRole.id); }); beforeEach(async () => { @@ -119,27 +94,27 @@ describe('People Groups Cloud Component', () => { await peopleGroupCloudComponentPage.checkPeopleCloudSingleSelectionIsSelected(); await peopleGroupCloudComponentPage.clickPeopleFilerByApp(); await peopleGroupCloudComponentPage.enterPeopleAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name); - await peopleCloudComponent.searchAssignee(`${activitiUser.firstName}`); - await peopleCloudComponent.checkUserIsDisplayed(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`); - await peopleCloudComponent.selectAssigneeFromList(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`); + await peopleCloudComponent.searchAssignee(`${testUser.firstName}`); + await peopleCloudComponent.checkUserIsDisplayed(`${testUser.firstName}` + ' ' + `${testUser.lastName}`); + await peopleCloudComponent.selectAssigneeFromList(`${testUser.firstName}` + ' ' + `${testUser.lastName}`); await browser.sleep(100); - await expect(await peopleCloudComponent.getAssigneeFieldContent()).toBe(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`); + await expect(await peopleCloudComponent.getAssigneeFieldContent()).toBe(`${testUser.firstName}` + ' ' + `${testUser.lastName}`); }); it('[C305041] Should filter the People Multiple Selection with the Application name filter', async () => { await peopleGroupCloudComponentPage.clickPeopleCloudMultipleSelection(); await peopleGroupCloudComponentPage.clickPeopleFilerByApp(); await peopleGroupCloudComponentPage.enterPeopleAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name); - await peopleCloudComponent.searchAssignee(`${apsUser.firstName}`); + await peopleCloudComponent.searchAssignee(`${testUser.firstName}`); + await peopleCloudComponent.checkUserIsDisplayed(`${testUser.firstName}` + ' ' + `${testUser.lastName}`); + await peopleCloudComponent.selectAssigneeFromList(`${testUser.firstName}` + ' ' + `${testUser.lastName}`); + await peopleCloudComponent.checkSelectedPeople(`${testUser.firstName}` + ' ' + `${testUser.lastName}`); + + await peopleCloudComponent.searchAssigneeToExisting(`${apsUser.firstName}`); await peopleCloudComponent.checkUserIsDisplayed(`${apsUser.firstName}` + ' ' + `${apsUser.lastName}`); await peopleCloudComponent.selectAssigneeFromList(`${apsUser.firstName}` + ' ' + `${apsUser.lastName}`); await peopleCloudComponent.checkSelectedPeople(`${apsUser.firstName}` + ' ' + `${apsUser.lastName}`); - await peopleCloudComponent.searchAssigneeToExisting(`${activitiUser.firstName}`); - await peopleCloudComponent.checkUserIsDisplayed(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`); - await peopleCloudComponent.selectAssigneeFromList(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`); - await peopleCloudComponent.checkSelectedPeople(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`); - await peopleCloudComponent.searchAssigneeToExisting(`${noRoleUser.firstName}`); await peopleCloudComponent.checkUserIsNotDisplayed(`${noRoleUser.firstName}` + ' ' + `${noRoleUser.lastName}`); }); @@ -148,25 +123,25 @@ describe('People Groups Cloud Component', () => { await peopleGroupCloudComponentPage.clickGroupCloudSingleSelection(); await peopleGroupCloudComponentPage.clickGroupFilerByApp(); await peopleGroupCloudComponentPage.enterGroupAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name); - await groupCloudComponentPage.searchGroups(`${groupActiviti.name}`); - await groupCloudComponentPage.checkGroupIsDisplayed(`${groupActiviti.name}`); - await groupCloudComponentPage.selectGroupFromList(`${groupActiviti.name}`); - await expect(await groupCloudComponentPage.getGroupsFieldContent()).toBe(`${groupActiviti.name}`); + await groupCloudComponentPage.searchGroups(`${hrGroup.name}`); + await groupCloudComponentPage.checkGroupIsDisplayed(`${hrGroup.name}`); + await groupCloudComponentPage.selectGroupFromList(`${hrGroup.name}`); + await expect(await groupCloudComponentPage.getGroupsFieldContent()).toBe(`${hrGroup.name}`); }); it('[C305041] Should filter the Groups Multiple Selection with the Application name filter', async () => { await peopleGroupCloudComponentPage.clickGroupCloudMultipleSelection(); await peopleGroupCloudComponentPage.clickGroupFilerByApp(); await peopleGroupCloudComponentPage.enterGroupAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name); - await groupCloudComponentPage.searchGroups(`${groupAps.name}`); - await groupCloudComponentPage.checkGroupIsDisplayed(`${groupAps.name}`); - await groupCloudComponentPage.selectGroupFromList(`${groupAps.name}`); - await groupCloudComponentPage.checkSelectedGroup(`${groupAps.name}`); + await groupCloudComponentPage.searchGroups(`${testGroup.name}`); + await groupCloudComponentPage.checkGroupIsDisplayed(`${testGroup.name}`); + await groupCloudComponentPage.selectGroupFromList(`${testGroup.name}`); + await groupCloudComponentPage.checkSelectedGroup(`${testGroup.name}`); - await groupCloudComponentPage.searchGroupsToExisting(`${groupActiviti.name}`); - await groupCloudComponentPage.checkGroupIsDisplayed(`${groupActiviti.name}`); - await groupCloudComponentPage.selectGroupFromList(`${groupActiviti.name}`); - await groupCloudComponentPage.checkSelectedGroup(`${groupActiviti.name}`); + await groupCloudComponentPage.searchGroupsToExisting(`${hrGroup.name}`); + await groupCloudComponentPage.checkGroupIsDisplayed(`${hrGroup.name}`); + await groupCloudComponentPage.selectGroupFromList(`${hrGroup.name}`); + await groupCloudComponentPage.checkSelectedGroup(`${hrGroup.name}`); await groupCloudComponentPage.searchGroupsToExisting(`${groupNoRole.name}`); await groupCloudComponentPage.checkGroupIsNotDisplayed(`${groupNoRole.name}`); diff --git a/e2e/process-services-cloud/start-task/start-task-custom-app-cloud.e2e.ts b/e2e/process-services-cloud/start-task/start-task-custom-app-cloud.e2e.ts index 2bc52a086a..110975c0b4 100644 --- a/e2e/process-services-cloud/start-task/start-task-custom-app-cloud.e2e.ts +++ b/e2e/process-services-cloud/start-task/start-task-custom-app-cloud.e2e.ts @@ -73,6 +73,7 @@ describe('Start Task', () => { activitiUser = await identityService.createIdentityUser(); groupInfo = await groupIdentityService.getGroupInfoByGroupName('hr'); await identityService.addUserToGroup(testUser.idIdentityService, groupInfo.id); + await identityService.addUserToGroup(apsUser.idIdentityService, groupInfo.id); await apiService.login(testUser.email, testUser.password); await settingsPage.setProviderBpmSso( @@ -86,13 +87,14 @@ describe('Start Task', () => { afterAll(async () => { const tasksService = new TasksService(apiService); - const tasks = [standaloneTaskName, unassignedTaskName, reassignTaskName]; - for (let i = 0; i < tasks.length; i++) { - const taskId = await tasksService.getTaskId(tasks[i], simpleApp); - if (taskId) { - await tasksService.deleteTask(taskId, simpleApp); - } - } + let taskId = await tasksService.getTaskId(standaloneTaskName, simpleApp); + await tasksService.deleteTask(taskId, simpleApp); + taskId = await tasksService.getTaskId(unassignedTaskName, simpleApp); + await tasksService.deleteTask(taskId, simpleApp); + + await apiService.login(apsUser.email, apsUser.password); + taskId = await tasksService.getTaskId(reassignTaskName, simpleApp); + await tasksService.deleteTask(taskId, simpleApp); await apiService.login(browser.params.identityAdmin.email, browser.params.identityAdmin.password); await identityService.deleteIdentityUser(activitiUser.idIdentityService); @@ -194,7 +196,7 @@ describe('Start Task', () => { await tasksCloudDemoPage.openNewTaskForm(); await startTask.checkFormIsDisplayed(); await startTask.addName(standaloneTaskName); - await peopleCloudComponent.searchAssigneeAndSelect(`${activitiUser.firstName} ${activitiUser.lastName}`); + await peopleCloudComponent.searchAssigneeAndSelect(`${apsUser.firstName} ${apsUser.lastName}`); await startTask.checkStartButtonIsEnabled(); await startTask.clickStartButton(); diff --git a/lib/core/userinfo/services/identity-user.service.ts b/lib/core/userinfo/services/identity-user.service.ts index 805ef1061f..522b52d69b 100644 --- a/lib/core/userinfo/services/identity-user.service.ts +++ b/lib/core/userinfo/services/identity-user.service.ts @@ -672,7 +672,7 @@ export class IdentityUserService { } private buildUserClientRoleMapping(userId: string, clientId: string): string { - return `${this.appConfigService.get('identityHost')}/users/${userId}/role-mappings/clients/${clientId}`; + return `${this.appConfigService.get('identityHost')}/users/${userId}/role-mappings/clients/${clientId}/composite`; } private buildRolesUrl(userId: string): string {