mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-4847] Not able to find any user in Assignee field when creating a task (#5029)
* [ADF-4847] Not able to find any user in Assignee field when creating a task Updated url to fetch composite user roles * [ADF-4847] Fixing failing E2E tests
This commit is contained in:
committed by
Eugenio Romano
parent
64cecaa125
commit
cdfae95c2a
@@ -19,7 +19,7 @@ import { NavigationBarPage } from '../pages/adf/navigationBarPage';
|
|||||||
import { PeopleGroupCloudComponentPage } from '../pages/adf/demo-shell/process-services/peopleGroupCloudComponentPage';
|
import { PeopleGroupCloudComponentPage } from '../pages/adf/demo-shell/process-services/peopleGroupCloudComponentPage';
|
||||||
import { GroupCloudComponentPage, PeopleCloudComponentPage, SettingsPage } from '@alfresco/adf-testing';
|
import { GroupCloudComponentPage, PeopleCloudComponentPage, SettingsPage } from '@alfresco/adf-testing';
|
||||||
import { browser } from 'protractor';
|
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');
|
import resources = require('../util/resources');
|
||||||
|
|
||||||
describe('People Groups Cloud Component', () => {
|
describe('People Groups Cloud Component', () => {
|
||||||
@@ -37,56 +37,37 @@ describe('People Groups Cloud Component', () => {
|
|||||||
);
|
);
|
||||||
let identityService: IdentityService;
|
let identityService: IdentityService;
|
||||||
let groupIdentityService: GroupIdentityService;
|
let groupIdentityService: GroupIdentityService;
|
||||||
let rolesService: RolesService;
|
|
||||||
|
|
||||||
let apsUser, testUser;
|
let apsUser, testUser;
|
||||||
let activitiUser;
|
|
||||||
let noRoleUser;
|
let noRoleUser;
|
||||||
let groupAps;
|
|
||||||
let groupActiviti;
|
|
||||||
let groupNoRole;
|
let groupNoRole;
|
||||||
let apsAdminRoleId;
|
|
||||||
let activitiAdminRoleId;
|
|
||||||
let clientActivitiAdminRoleId, clientActivitiUserRoleId;
|
|
||||||
let users = [];
|
let users = [];
|
||||||
let groups = [];
|
let hrGroup;
|
||||||
let clientId;
|
let testGroup;
|
||||||
|
|
||||||
beforeAll(async () => {
|
beforeAll(async () => {
|
||||||
await apiService.login(browser.params.identityAdmin.email, browser.params.identityAdmin.password);
|
await apiService.login(browser.params.identityAdmin.email, browser.params.identityAdmin.password);
|
||||||
|
|
||||||
identityService = new IdentityService(apiService);
|
identityService = new IdentityService(apiService);
|
||||||
rolesService = new RolesService(apiService);
|
|
||||||
groupIdentityService = new GroupIdentityService(apiService);
|
groupIdentityService = new GroupIdentityService(apiService);
|
||||||
clientId = await groupIdentityService.getClientIdByApplicationName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
hrGroup = await groupIdentityService.getGroupInfoByGroupName('hr');
|
||||||
groupActiviti = await groupIdentityService.createIdentityGroup();
|
testGroup = await groupIdentityService.getGroupInfoByGroupName('testgroup');
|
||||||
clientActivitiAdminRoleId = await rolesService.getClientRoleIdByRoleName(groupActiviti.id, clientId, identityService.ROLES.ACTIVITI_ADMIN);
|
|
||||||
clientActivitiUserRoleId = await rolesService.getClientRoleIdByRoleName(groupActiviti.id, clientId, identityService.ROLES.ACTIVITI_USER);
|
|
||||||
|
|
||||||
testUser = await identityService.createIdentityUserWithRole(apiService, [identityService.ROLES.APS_USER]);
|
testUser = await identityService.createIdentityUserWithRole(apiService, [identityService.ROLES.APS_USER]);
|
||||||
apsUser = 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();
|
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();
|
groupNoRole = await groupIdentityService.createIdentityGroup();
|
||||||
|
|
||||||
await groupIdentityService.addClientRole(groupAps.id, clientId, clientActivitiAdminRoleId, identityService.ROLES.ACTIVITI_ADMIN);
|
users = [`${apsUser.idIdentityService}`, `${noRoleUser.idIdentityService}`, `${testUser.idIdentityService}`];
|
||||||
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}`];
|
|
||||||
|
|
||||||
await settingsPage.setProviderBpmSso(
|
await settingsPage.setProviderBpmSso(
|
||||||
browser.params.config.bpmHost,
|
browser.params.config.bpmHost,
|
||||||
browser.params.config.oauth2.host,
|
browser.params.config.oauth2.host,
|
||||||
browser.params.config.identityHost);
|
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++) {
|
for (let i = 0; i < users.length; i++) {
|
||||||
await identityService.deleteIdentityUser(users[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 () => {
|
beforeEach(async () => {
|
||||||
@@ -119,27 +94,27 @@ describe('People Groups Cloud Component', () => {
|
|||||||
await peopleGroupCloudComponentPage.checkPeopleCloudSingleSelectionIsSelected();
|
await peopleGroupCloudComponentPage.checkPeopleCloudSingleSelectionIsSelected();
|
||||||
await peopleGroupCloudComponentPage.clickPeopleFilerByApp();
|
await peopleGroupCloudComponentPage.clickPeopleFilerByApp();
|
||||||
await peopleGroupCloudComponentPage.enterPeopleAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
await peopleGroupCloudComponentPage.enterPeopleAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
||||||
await peopleCloudComponent.searchAssignee(`${activitiUser.firstName}`);
|
await peopleCloudComponent.searchAssignee(`${testUser.firstName}`);
|
||||||
await peopleCloudComponent.checkUserIsDisplayed(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`);
|
await peopleCloudComponent.checkUserIsDisplayed(`${testUser.firstName}` + ' ' + `${testUser.lastName}`);
|
||||||
await peopleCloudComponent.selectAssigneeFromList(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`);
|
await peopleCloudComponent.selectAssigneeFromList(`${testUser.firstName}` + ' ' + `${testUser.lastName}`);
|
||||||
await browser.sleep(100);
|
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 () => {
|
it('[C305041] Should filter the People Multiple Selection with the Application name filter', async () => {
|
||||||
await peopleGroupCloudComponentPage.clickPeopleCloudMultipleSelection();
|
await peopleGroupCloudComponentPage.clickPeopleCloudMultipleSelection();
|
||||||
await peopleGroupCloudComponentPage.clickPeopleFilerByApp();
|
await peopleGroupCloudComponentPage.clickPeopleFilerByApp();
|
||||||
await peopleGroupCloudComponentPage.enterPeopleAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
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.checkUserIsDisplayed(`${apsUser.firstName}` + ' ' + `${apsUser.lastName}`);
|
||||||
await peopleCloudComponent.selectAssigneeFromList(`${apsUser.firstName}` + ' ' + `${apsUser.lastName}`);
|
await peopleCloudComponent.selectAssigneeFromList(`${apsUser.firstName}` + ' ' + `${apsUser.lastName}`);
|
||||||
await peopleCloudComponent.checkSelectedPeople(`${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.searchAssigneeToExisting(`${noRoleUser.firstName}`);
|
||||||
await peopleCloudComponent.checkUserIsNotDisplayed(`${noRoleUser.firstName}` + ' ' + `${noRoleUser.lastName}`);
|
await peopleCloudComponent.checkUserIsNotDisplayed(`${noRoleUser.firstName}` + ' ' + `${noRoleUser.lastName}`);
|
||||||
});
|
});
|
||||||
@@ -148,25 +123,25 @@ describe('People Groups Cloud Component', () => {
|
|||||||
await peopleGroupCloudComponentPage.clickGroupCloudSingleSelection();
|
await peopleGroupCloudComponentPage.clickGroupCloudSingleSelection();
|
||||||
await peopleGroupCloudComponentPage.clickGroupFilerByApp();
|
await peopleGroupCloudComponentPage.clickGroupFilerByApp();
|
||||||
await peopleGroupCloudComponentPage.enterGroupAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
await peopleGroupCloudComponentPage.enterGroupAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
||||||
await groupCloudComponentPage.searchGroups(`${groupActiviti.name}`);
|
await groupCloudComponentPage.searchGroups(`${hrGroup.name}`);
|
||||||
await groupCloudComponentPage.checkGroupIsDisplayed(`${groupActiviti.name}`);
|
await groupCloudComponentPage.checkGroupIsDisplayed(`${hrGroup.name}`);
|
||||||
await groupCloudComponentPage.selectGroupFromList(`${groupActiviti.name}`);
|
await groupCloudComponentPage.selectGroupFromList(`${hrGroup.name}`);
|
||||||
await expect(await groupCloudComponentPage.getGroupsFieldContent()).toBe(`${groupActiviti.name}`);
|
await expect(await groupCloudComponentPage.getGroupsFieldContent()).toBe(`${hrGroup.name}`);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C305041] Should filter the Groups Multiple Selection with the Application name filter', async () => {
|
it('[C305041] Should filter the Groups Multiple Selection with the Application name filter', async () => {
|
||||||
await peopleGroupCloudComponentPage.clickGroupCloudMultipleSelection();
|
await peopleGroupCloudComponentPage.clickGroupCloudMultipleSelection();
|
||||||
await peopleGroupCloudComponentPage.clickGroupFilerByApp();
|
await peopleGroupCloudComponentPage.clickGroupFilerByApp();
|
||||||
await peopleGroupCloudComponentPage.enterGroupAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
await peopleGroupCloudComponentPage.enterGroupAppName(resources.ACTIVITI7_APPS.SIMPLE_APP.name);
|
||||||
await groupCloudComponentPage.searchGroups(`${groupAps.name}`);
|
await groupCloudComponentPage.searchGroups(`${testGroup.name}`);
|
||||||
await groupCloudComponentPage.checkGroupIsDisplayed(`${groupAps.name}`);
|
await groupCloudComponentPage.checkGroupIsDisplayed(`${testGroup.name}`);
|
||||||
await groupCloudComponentPage.selectGroupFromList(`${groupAps.name}`);
|
await groupCloudComponentPage.selectGroupFromList(`${testGroup.name}`);
|
||||||
await groupCloudComponentPage.checkSelectedGroup(`${groupAps.name}`);
|
await groupCloudComponentPage.checkSelectedGroup(`${testGroup.name}`);
|
||||||
|
|
||||||
await groupCloudComponentPage.searchGroupsToExisting(`${groupActiviti.name}`);
|
await groupCloudComponentPage.searchGroupsToExisting(`${hrGroup.name}`);
|
||||||
await groupCloudComponentPage.checkGroupIsDisplayed(`${groupActiviti.name}`);
|
await groupCloudComponentPage.checkGroupIsDisplayed(`${hrGroup.name}`);
|
||||||
await groupCloudComponentPage.selectGroupFromList(`${groupActiviti.name}`);
|
await groupCloudComponentPage.selectGroupFromList(`${hrGroup.name}`);
|
||||||
await groupCloudComponentPage.checkSelectedGroup(`${groupActiviti.name}`);
|
await groupCloudComponentPage.checkSelectedGroup(`${hrGroup.name}`);
|
||||||
|
|
||||||
await groupCloudComponentPage.searchGroupsToExisting(`${groupNoRole.name}`);
|
await groupCloudComponentPage.searchGroupsToExisting(`${groupNoRole.name}`);
|
||||||
await groupCloudComponentPage.checkGroupIsNotDisplayed(`${groupNoRole.name}`);
|
await groupCloudComponentPage.checkGroupIsNotDisplayed(`${groupNoRole.name}`);
|
||||||
|
@@ -73,6 +73,7 @@ describe('Start Task', () => {
|
|||||||
activitiUser = await identityService.createIdentityUser();
|
activitiUser = await identityService.createIdentityUser();
|
||||||
groupInfo = await groupIdentityService.getGroupInfoByGroupName('hr');
|
groupInfo = await groupIdentityService.getGroupInfoByGroupName('hr');
|
||||||
await identityService.addUserToGroup(testUser.idIdentityService, groupInfo.id);
|
await identityService.addUserToGroup(testUser.idIdentityService, groupInfo.id);
|
||||||
|
await identityService.addUserToGroup(apsUser.idIdentityService, groupInfo.id);
|
||||||
await apiService.login(testUser.email, testUser.password);
|
await apiService.login(testUser.email, testUser.password);
|
||||||
|
|
||||||
await settingsPage.setProviderBpmSso(
|
await settingsPage.setProviderBpmSso(
|
||||||
@@ -86,13 +87,14 @@ describe('Start Task', () => {
|
|||||||
afterAll(async () => {
|
afterAll(async () => {
|
||||||
const tasksService = new TasksService(apiService);
|
const tasksService = new TasksService(apiService);
|
||||||
|
|
||||||
const tasks = [standaloneTaskName, unassignedTaskName, reassignTaskName];
|
let taskId = await tasksService.getTaskId(standaloneTaskName, simpleApp);
|
||||||
for (let i = 0; i < tasks.length; i++) {
|
await tasksService.deleteTask(taskId, simpleApp);
|
||||||
const taskId = await tasksService.getTaskId(tasks[i], simpleApp);
|
taskId = await tasksService.getTaskId(unassignedTaskName, simpleApp);
|
||||||
if (taskId) {
|
await tasksService.deleteTask(taskId, simpleApp);
|
||||||
|
|
||||||
|
await apiService.login(apsUser.email, apsUser.password);
|
||||||
|
taskId = await tasksService.getTaskId(reassignTaskName, simpleApp);
|
||||||
await tasksService.deleteTask(taskId, simpleApp);
|
await tasksService.deleteTask(taskId, simpleApp);
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
await apiService.login(browser.params.identityAdmin.email, browser.params.identityAdmin.password);
|
await apiService.login(browser.params.identityAdmin.email, browser.params.identityAdmin.password);
|
||||||
await identityService.deleteIdentityUser(activitiUser.idIdentityService);
|
await identityService.deleteIdentityUser(activitiUser.idIdentityService);
|
||||||
@@ -194,7 +196,7 @@ describe('Start Task', () => {
|
|||||||
await tasksCloudDemoPage.openNewTaskForm();
|
await tasksCloudDemoPage.openNewTaskForm();
|
||||||
await startTask.checkFormIsDisplayed();
|
await startTask.checkFormIsDisplayed();
|
||||||
await startTask.addName(standaloneTaskName);
|
await startTask.addName(standaloneTaskName);
|
||||||
await peopleCloudComponent.searchAssigneeAndSelect(`${activitiUser.firstName} ${activitiUser.lastName}`);
|
await peopleCloudComponent.searchAssigneeAndSelect(`${apsUser.firstName} ${apsUser.lastName}`);
|
||||||
|
|
||||||
await startTask.checkStartButtonIsEnabled();
|
await startTask.checkStartButtonIsEnabled();
|
||||||
await startTask.clickStartButton();
|
await startTask.clickStartButton();
|
||||||
|
@@ -672,7 +672,7 @@ export class IdentityUserService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private buildUserClientRoleMapping(userId: string, clientId: string): string {
|
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 {
|
private buildRolesUrl(userId: string): string {
|
||||||
|
Reference in New Issue
Block a user