mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-4274] Should be able to reassign the removed user when starting a new task. (#4591)
* C305050 automated * added the api call to delete the tasks created in afterAll() method and also creating a new user and using that in the Tests and deleting the user in the end rather than using 'Super Admin' and reduce the dependency on env configuration. * linting fixes
This commit is contained in:
committed by
Eugenio Romano
parent
f258c79f7a
commit
0fe0ee9db7
@@ -18,8 +18,10 @@
|
|||||||
import TestConfig = require('../test.config');
|
import TestConfig = require('../test.config');
|
||||||
import { NavigationBarPage } from '../pages/adf/navigationBarPage';
|
import { NavigationBarPage } from '../pages/adf/navigationBarPage';
|
||||||
import { TasksCloudDemoPage } from '../pages/adf/demo-shell/process-services/tasksCloudDemoPage';
|
import { TasksCloudDemoPage } from '../pages/adf/demo-shell/process-services/tasksCloudDemoPage';
|
||||||
import { LoginSSOPage, SettingsPage, AppListCloudPage, StringUtil, TaskHeaderCloudPage,
|
import {
|
||||||
StartTasksCloudPage, PeopleCloudComponentPage } from '@alfresco/adf-testing';
|
LoginSSOPage, SettingsPage, AppListCloudPage, StringUtil, TaskHeaderCloudPage,
|
||||||
|
StartTasksCloudPage, PeopleCloudComponentPage, TasksService, ApiService, IdentityService
|
||||||
|
} from '@alfresco/adf-testing';
|
||||||
import { browser } from 'protractor';
|
import { browser } from 'protractor';
|
||||||
|
|
||||||
describe('Start Task', () => {
|
describe('Start Task', () => {
|
||||||
@@ -33,6 +35,7 @@ describe('Start Task', () => {
|
|||||||
const startTask = new StartTasksCloudPage();
|
const startTask = new StartTasksCloudPage();
|
||||||
const peopleCloudComponent = new PeopleCloudComponentPage();
|
const peopleCloudComponent = new PeopleCloudComponentPage();
|
||||||
const standaloneTaskName = StringUtil.generateRandomString(5);
|
const standaloneTaskName = StringUtil.generateRandomString(5);
|
||||||
|
const reassignTaskName = StringUtil.generateRandomString(5);
|
||||||
const unassignedTaskName = StringUtil.generateRandomString(5);
|
const unassignedTaskName = StringUtil.generateRandomString(5);
|
||||||
const taskName255Characters = StringUtil.generateRandomString(255);
|
const taskName255Characters = StringUtil.generateRandomString(255);
|
||||||
const taskNameBiggerThen255Characters = StringUtil.generateRandomString(256);
|
const taskNameBiggerThen255Characters = StringUtil.generateRandomString(256);
|
||||||
@@ -41,14 +44,36 @@ describe('Start Task', () => {
|
|||||||
const dateValidationError = 'Date format DD/MM/YYYY';
|
const dateValidationError = 'Date format DD/MM/YYYY';
|
||||||
const user = TestConfig.adf.adminEmail, password = TestConfig.adf.adminPassword;
|
const user = TestConfig.adf.adminEmail, password = TestConfig.adf.adminPassword;
|
||||||
const appName = 'simple-app';
|
const appName = 'simple-app';
|
||||||
let silentLogin;
|
let silentLogin, activitiUser;
|
||||||
|
let tasksService: TasksService;
|
||||||
|
let identityService: IdentityService;
|
||||||
|
|
||||||
|
beforeAll(async(done) => {
|
||||||
|
const apiService = new ApiService('activiti', TestConfig.adf.hostBPM, TestConfig.adf.hostSso, 'BPM');
|
||||||
|
await apiService.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||||
|
identityService = new IdentityService(apiService);
|
||||||
|
tasksService = new TasksService(apiService);
|
||||||
|
activitiUser = await identityService.createIdentityUser();
|
||||||
|
|
||||||
beforeAll((done) => {
|
|
||||||
silentLogin = false;
|
silentLogin = false;
|
||||||
settingsPage.setProviderBpmSso(TestConfig.adf.hostBPM, TestConfig.adf.hostSso, TestConfig.adf.hostIdentity, silentLogin);
|
settingsPage.setProviderBpmSso(TestConfig.adf.hostBPM, TestConfig.adf.hostSso, TestConfig.adf.hostIdentity, silentLogin);
|
||||||
loginSSOPage.clickOnSSOButton();
|
loginSSOPage.clickOnSSOButton();
|
||||||
browser.ignoreSynchronization = true;
|
browser.ignoreSynchronization = true;
|
||||||
loginSSOPage.loginSSOIdentityService(user, password);
|
loginSSOPage.loginSSOIdentityService(user, password);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
|
||||||
|
afterAll(async (done) => {
|
||||||
|
const tasks = [ standaloneTaskName, unassignedTaskName, reassignTaskName ];
|
||||||
|
for (let i = 0; i < tasks.length; i++) {
|
||||||
|
const taskId = await tasksService.getTaskId(tasks[i], appName);
|
||||||
|
await tasksService.deleteTask(taskId, appName);
|
||||||
|
}
|
||||||
|
await identityService.deleteIdentityUser(activitiUser.idIdentityService);
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
|
||||||
|
beforeEach((done) => {
|
||||||
navigationBarPage.navigateToProcessServicesCloudPage();
|
navigationBarPage.navigateToProcessServicesCloudPage();
|
||||||
appListCloudComponent.checkApsContainer();
|
appListCloudComponent.checkApsContainer();
|
||||||
appListCloudComponent.checkAppIsDisplayed(appName);
|
appListCloudComponent.checkAppIsDisplayed(appName);
|
||||||
@@ -109,7 +134,7 @@ describe('Start Task', () => {
|
|||||||
tasksCloudDemoPage.openNewTaskForm();
|
tasksCloudDemoPage.openNewTaskForm();
|
||||||
startTask.checkFormIsDisplayed();
|
startTask.checkFormIsDisplayed();
|
||||||
startTask.addName(standaloneTaskName);
|
startTask.addName(standaloneTaskName);
|
||||||
peopleCloudComponent.searchAssigneeAndSelect('Super Admin');
|
peopleCloudComponent.searchAssigneeAndSelect(`${activitiUser.firstName}` + ' ' + `${activitiUser.lastName}`);
|
||||||
startTask.checkStartButtonIsEnabled();
|
startTask.checkStartButtonIsEnabled();
|
||||||
startTask.clickStartButton();
|
startTask.clickStartButton();
|
||||||
tasksCloudDemoPage.myTasksFilter().clickTaskFilter();
|
tasksCloudDemoPage.myTasksFilter().clickTaskFilter();
|
||||||
@@ -139,6 +164,24 @@ describe('Start Task', () => {
|
|||||||
tasksCloudDemoPage.taskListCloudComponent().checkContentIsDisplayedByName(unassignedTaskName);
|
tasksCloudDemoPage.taskListCloudComponent().checkContentIsDisplayedByName(unassignedTaskName);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('[C305050] Should be able to reassign the removed user when starting a new task', () => {
|
||||||
|
|
||||||
|
tasksCloudDemoPage.openNewTaskForm();
|
||||||
|
startTask.checkFormIsDisplayed();
|
||||||
|
startTask.addName(reassignTaskName);
|
||||||
|
expect(peopleCloudComponent.getAssignee()).toBe('Administrator ADF');
|
||||||
|
startTask.clearField(peopleCloudComponent.peopleCloudSearch);
|
||||||
|
peopleCloudComponent.searchAssignee(user);
|
||||||
|
peopleCloudComponent.checkUserIsDisplayed('Administrator ADF');
|
||||||
|
peopleCloudComponent.selectAssigneeFromList('Administrator ADF');
|
||||||
|
startTask.clickStartButton();
|
||||||
|
tasksCloudDemoPage.myTasksFilter().clickTaskFilter();
|
||||||
|
expect(tasksCloudDemoPage.getActiveFilterName()).toBe('My Tasks');
|
||||||
|
tasksCloudDemoPage.taskListCloudComponent().checkContentIsDisplayedByName(reassignTaskName);
|
||||||
|
tasksCloudDemoPage.taskListCloudComponent().selectRow(reassignTaskName);
|
||||||
|
expect(taskHeaderCloudPage.getAssignee()).toBe('admin.adf');
|
||||||
|
});
|
||||||
|
|
||||||
it('[C297675] Should create a task unassigned when assignee field is empty in Start Task form', () => {
|
it('[C297675] Should create a task unassigned when assignee field is empty in Start Task form', () => {
|
||||||
|
|
||||||
tasksCloudDemoPage.openNewTaskForm();
|
tasksCloudDemoPage.openNewTaskForm();
|
||||||
|
@@ -86,6 +86,16 @@ export class TasksService {
|
|||||||
return data;
|
return data;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async getTaskId(taskName, appName) {
|
||||||
|
const path = '/' + appName + '/query/v1/tasks';
|
||||||
|
const method = 'GET';
|
||||||
|
|
||||||
|
const queryParams = {name: taskName}, postBody = {};
|
||||||
|
|
||||||
|
const data = await this.api.performBpmOperation(path, method, queryParams, postBody);
|
||||||
|
return data.list.entries[0].entry.id;
|
||||||
|
}
|
||||||
|
|
||||||
async createStandaloneSubtask(parentTaskId, appName, name) {
|
async createStandaloneSubtask(parentTaskId, appName, name) {
|
||||||
const path = '/' + appName + '/rb/v1/tasks';
|
const path = '/' + appName + '/rb/v1/tasks';
|
||||||
const method = 'POST';
|
const method = 'POST';
|
||||||
|
Reference in New Issue
Block a user