[ACS-5761] Demo Shell Cleanup (part 2) (#8807)

cleanup demo shell
This commit is contained in:
Denys Vuika
2023-08-10 22:18:21 +01:00
committed by GitHub
parent ca60b392d4
commit f201efd56a
203 changed files with 1005 additions and 10703 deletions

View File

@@ -16,20 +16,13 @@
*/
import { browser } from 'protractor';
import { createApiService,
ApplicationsUtil,
LoginPage,
ModelsActions,
ProcessUtil,
UsersActions
} from '@alfresco/adf-testing';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { createApiService, ApplicationsUtil, LoginPage, ModelsActions, ProcessUtil, UsersActions, UserModel } from '@alfresco/adf-testing';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { CommentsPage } from '../../core/pages/comments.page';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ActivitiCommentsApi, TasksApi } from '@alfresco/js-api';
import { ActivitiCommentsApi, ResultListDataRepresentationCommentRepresentation, TasksApi } from '@alfresco/js-api';
describe('Comment component for Processes', () => {
const app = browser.params.resources.Files.SIMPLE_APP_WITH_USER_FORM;
const loginPage = new LoginPage();
@@ -44,7 +37,10 @@ describe('Comment component for Processes', () => {
const commentsApi = new ActivitiCommentsApi(apiService.getInstance());
const taskApi = new TasksApi(apiService.getInstance());
let user; let appId; let processInstanceId; let addedComment;
let user: UserModel;
let appId: number;
let processInstanceId: string;
let addedComment: ResultListDataRepresentationCommentRepresentation;
const processName = 'Comment APS';
beforeAll(async () => {
@@ -82,7 +78,9 @@ describe('Comment component for Processes', () => {
await commentsPage.getTotalNumberOfComments('Comments (' + addedComment.total + ')');
await expect(await commentsPage.getMessage(0)).toEqual(addedComment.data[0].message);
await expect(await commentsPage.getUserName(0)).toEqual(addedComment.data[0].createdBy.firstName + ' ' + addedComment.data[0].createdBy.lastName);
await expect(await commentsPage.getUserName(0)).toEqual(
addedComment.data[0].createdBy.firstName + ' ' + addedComment.data[0].createdBy.lastName
);
await expect(await commentsPage.getTime(0)).toMatch(/(ago|few)/);
});
@@ -120,7 +118,9 @@ describe('Comment component for Processes', () => {
await commentsPage.getTotalNumberOfComments('Comments (' + addedTaskComment.total + ')');
await expect(await commentsPage.getMessage(0)).toEqual(addedTaskComment.data[0].message);
await expect(await commentsPage.getUserName(0)).toEqual(addedTaskComment.data[0].createdBy.firstName + ' ' + addedTaskComment.data[0].createdBy.lastName);
await expect(await commentsPage.getUserName(0)).toEqual(
addedTaskComment.data[0].createdBy.firstName + ' ' + addedTaskComment.data[0].createdBy.lastName
);
await expect(await commentsPage.getTime(0)).toMatch(/(ago|few)/);
});
});

View File

@@ -17,20 +17,18 @@
import { browser } from 'protractor';
import { createApiService,
ApplicationsUtil,
LoginPage,
ModelsActions,
ProcessUtil,
UsersActions
} from '@alfresco/adf-testing';
import { createApiService, ApplicationsUtil, LoginPage, ModelsActions, ProcessUtil, UsersActions, UserModel } from '@alfresco/adf-testing';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { FiltersPage } from './../pages/filters.page';
import { ProcessInstancesApi, UserFiltersApi } from '@alfresco/js-api';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { FiltersPage } from '../pages/filters.page';
import {
AppDefinitionRepresentation,
ProcessInstancesApi,
ResultListDataRepresentationProcessInstanceRepresentation,
UserFiltersApi
} from '@alfresco/js-api';
describe('Sorting for process filters', () => {
const app = browser.params.resources.Files.SIMPLE_APP_WITH_USER_FORM;
const loginPage = new LoginPage();
@@ -44,8 +42,11 @@ describe('Sorting for process filters', () => {
const userFiltersApi = new UserFiltersApi(apiService.getInstance());
const processInstancesApi = new ProcessInstancesApi(apiService.getInstance());
let tenantId, appId, user, processesQuery;
let importedApp;
let tenantId: number;
let appId: number;
let user: UserModel;
let processesQuery: ResultListDataRepresentationProcessInstanceRepresentation;
let importedApp: AppDefinitionRepresentation;
const processFilter = {
running_old_first: 'Running - Oldest first',
@@ -79,16 +80,17 @@ describe('Sorting for process filters', () => {
await modelsActions.deleteModel(appId);
await apiService.loginWithProfile('admin');
await usersActions.deleteTenant(tenantId);
} catch (e) {
}
} catch (e) {}
await navigationBarPage.clickLogoutButton();
});
it('[C260476] Should be able to create a filter on APS for running processes - Oldest first and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.running_old_first, 'icon': 'glyphicon-random',
'filter': { 'sort': 'created-asc', 'name': '', 'state': 'running' }
appId: null,
name: processFilter.running_old_first,
icon: 'glyphicon-random',
filter: { sort: 'created-asc', name: '', state: 'running' }
});
const processUtil = new ProcessUtil(apiService);
const firstProc = await processUtil.startProcessOfApp(importedApp.name);
@@ -100,7 +102,10 @@ describe('Sorting for process filters', () => {
await processFiltersPage.checkFilterIsDisplayed(processFilter.running_old_first);
await filtersPage.goToFilter(processFilter.running_old_first);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'running', 'sort': 'created-asc'
processDefinitionId: null,
appDefinitionId: null,
state: 'running',
sort: 'created-asc'
});
await expect(processesQuery.data[0].name).toEqual(firstProc.name);
await expect(processesQuery.data[1].name).toEqual(secondProc.name);
@@ -109,8 +114,10 @@ describe('Sorting for process filters', () => {
it('[C260477] Should be able to create a filter on APS for completed processes - Oldest first and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.completed_old_first, 'icon': 'glyphicon-random',
'filter': { 'sort': 'created-asc', 'name': '', 'state': 'completed' }
appId: null,
name: processFilter.completed_old_first,
icon: 'glyphicon-random',
filter: { sort: 'created-asc', name: '', state: 'completed' }
});
const processUtil = new ProcessUtil(apiService);
@@ -129,7 +136,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.completed_old_first);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'completed', 'sort': 'created-asc'
processDefinitionId: null,
appDefinitionId: null,
state: 'completed',
sort: 'created-asc'
});
await expect(processesQuery.data[0].name).toEqual(firstProc.name);
await expect(processesQuery.data[1].name).toEqual(secondProc.name);
@@ -138,8 +148,10 @@ describe('Sorting for process filters', () => {
it('[C260478] Should be able to create a filter on APS for all processes - Oldest first and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.all_old_first, 'icon': 'glyphicon-random',
'filter': { 'sort': 'created-asc', 'name': '', 'state': 'all' }
appId: null,
name: processFilter.all_old_first,
icon: 'glyphicon-random',
filter: { sort: 'created-asc', name: '', state: 'all' }
});
const processUtil = new ProcessUtil(apiService);
@@ -162,7 +174,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.all_old_first);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'all', 'sort': 'created-asc'
processDefinitionId: null,
appDefinitionId: null,
state: 'all',
sort: 'created-asc'
});
await expect(processesQuery.data[0].name).toEqual(firstProc.name);
await expect(processesQuery.data[1].name).toEqual(secondProc.name);
@@ -174,8 +189,10 @@ describe('Sorting for process filters', () => {
it('[C260479] Should be able to create a filter on APS for running processes - Newest first and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.running_new_first, 'icon': 'glyphicon-random',
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'running' }
appId: null,
name: processFilter.running_new_first,
icon: 'glyphicon-random',
filter: { sort: 'created-desc', name: '', state: 'running' }
});
const processUtil = new ProcessUtil(apiService);
@@ -190,7 +207,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.running_new_first);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'running', 'sort': 'created-desc'
processDefinitionId: null,
appDefinitionId: null,
state: 'running',
sort: 'created-desc'
});
await expect(processesQuery.data[0].name).toEqual(thirdProc.name);
await expect(processesQuery.data[1].name).toEqual(secondProc.name);
@@ -199,8 +219,10 @@ describe('Sorting for process filters', () => {
it('[C260480] Should be able to create a filter on APS for completed processes - Newest first and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.completed_new_first, 'icon': 'glyphicon-random',
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'completed' }
appId: null,
name: processFilter.completed_new_first,
icon: 'glyphicon-random',
filter: { sort: 'created-desc', name: '', state: 'completed' }
});
const processUtil = new ProcessUtil(apiService);
@@ -218,7 +240,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.completed_new_first);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'completed', 'sort': 'created-desc'
processDefinitionId: null,
appDefinitionId: null,
state: 'completed',
sort: 'created-desc'
});
await expect(processesQuery.data[0].name).toEqual(thirdProc.name);
await expect(processesQuery.data[1].name).toEqual(secondProc.name);
@@ -227,8 +252,10 @@ describe('Sorting for process filters', () => {
it('[C260481] Should be able to create a filter on APS for all processes - Newest first and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.all_new_first, 'icon': 'glyphicon-random',
'filter': { 'sort': 'created-desc', 'name': '', 'state': 'all' }
appId: null,
name: processFilter.all_new_first,
icon: 'glyphicon-random',
filter: { sort: 'created-desc', name: '', state: 'all' }
});
const processUtil = new ProcessUtil(apiService);
@@ -251,7 +278,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.all_new_first);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'all', 'sort': 'created-desc'
processDefinitionId: null,
appDefinitionId: null,
state: 'all',
sort: 'created-desc'
});
await expect(processesQuery.data[0].name).toEqual(deleteThirdProc.name);
await expect(processesQuery.data[1].name).toEqual(deleteSecondProc.name);
@@ -263,8 +293,10 @@ describe('Sorting for process filters', () => {
it('[C272815] Should be able to create a filter on APS for completed processes - Completed most recently and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.completed_most_recently, 'icon': 'glyphicon-random',
'filter': { 'sort': 'ended-asc', 'name': '', 'state': 'completed' }
appId: null,
name: processFilter.completed_most_recently,
icon: 'glyphicon-random',
filter: { sort: 'ended-asc', name: '', state: 'completed' }
});
const processUtil = new ProcessUtil(apiService);
@@ -283,7 +315,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.completed_most_recently);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'completed', 'sort': 'ended-asc'
processDefinitionId: null,
appDefinitionId: null,
state: 'completed',
sort: 'ended-asc'
});
await expect(processesQuery.data[0].name).toEqual(secondProc.name);
await expect(processesQuery.data[1].name).toEqual(firstProc.name);
@@ -292,8 +327,10 @@ describe('Sorting for process filters', () => {
it('[C272816] Should be able to create a filter on APS for completed processes - Completed least recently and check on ADF', async () => {
await userFiltersApi.createUserProcessInstanceFilter({
'appId': null, 'name': processFilter.completed_least_recently, 'icon': 'glyphicon-random',
'filter': { 'sort': 'ended-desc', 'name': '', 'state': 'completed' }
appId: null,
name: processFilter.completed_least_recently,
icon: 'glyphicon-random',
filter: { sort: 'ended-desc', name: '', state: 'completed' }
});
const processUtil = new ProcessUtil(apiService);
@@ -312,7 +349,10 @@ describe('Sorting for process filters', () => {
await filtersPage.goToFilter(processFilter.completed_least_recently);
processesQuery = await processInstancesApi.getProcessInstances({
'processDefinitionId': null, 'appDefinitionId': null, 'state': 'completed', 'sort': 'ended-desc'
processDefinitionId: null,
appDefinitionId: null,
state: 'completed',
sort: 'ended-desc'
});
await expect(processesQuery.data[0].name).toEqual(thirdProc.name);
await expect(processesQuery.data[1].name).toEqual(firstProc.name);

View File

@@ -15,26 +15,24 @@
* limitations under the License.
*/
import { createApiService, LoginPage, UsersActions } from '@alfresco/adf-testing';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { ProcessServiceTabBarPage } from './../pages/process-service-tab-bar.page';
import { AppSettingsTogglesPage } from './../pages/dialog/app-settings-toggles.page';
import { createApiService, LoginPage, UserModel, UsersActions } from '@alfresco/adf-testing';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { UserFiltersApi } from '@alfresco/js-api';
import { UserFiltersApi, UserProcessInstanceFilterRepresentation } from '@alfresco/js-api';
describe('New Process Filters', () => {
const loginPage = new LoginPage();
const processFiltersPage = new ProcessFiltersPage();
const processServiceTabBarPage = new ProcessServiceTabBarPage();
const appSettingsToggles = new AppSettingsTogglesPage();
const navigationBarPage = new NavigationBarPage();
const apiService = createApiService();
const usersActions = new UsersActions(apiService);
const userFiltersApi = new UserFiltersApi(apiService.getInstance());
let tenantId; let user; let filterId; let customProcessFilter;
let tenantId: number;
let user: UserModel;
let filterId: number;
let customProcessFilter: UserProcessInstanceFilterRepresentation;
const processFilter = {
running: 'Running',
@@ -87,28 +85,6 @@ describe('New Process Filters', () => {
await processFiltersPage.checkFilterIsDisplayed(processFilter.new_filter);
});
it('[C286450] Should display the process filter icon when a custom filter is added', async () => {
customProcessFilter = await userFiltersApi.createUserProcessInstanceFilter({
appId: null,
name: processFilter.new_icon,
icon: 'glyphicon-cloud',
filter: { sort: 'created-desc', name: '', state: 'running' }
});
filterId = customProcessFilter.id;
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.checkFilterIsDisplayed(processFilter.new_icon);
await processServiceTabBarPage.clickSettingsButton();
await appSettingsToggles.enableProcessFiltersIcon();
await processServiceTabBarPage.clickProcessButton();
await processFiltersPage.checkFilterIsDisplayed(processFilter.new_icon);
await expect(await processFiltersPage.getFilterIcon(processFilter.new_icon)).toEqual('cloud');
});
it('[C260474] Should be able to edit a filter on APS and check it on ADF', async () => {
customProcessFilter = await userFiltersApi.createUserProcessInstanceFilter({
appId: null,
@@ -131,51 +107,6 @@ describe('New Process Filters', () => {
await processFiltersPage.checkFilterIsDisplayed(processFilter.edited);
});
it('[C286451] Should display changes on a process filter when this filter icon is edited', async () => {
customProcessFilter = await userFiltersApi.createUserProcessInstanceFilter({
appId: null,
name: processFilter.edit_icon,
icon: 'glyphicon-random',
filter: { sort: 'created-desc', name: '', state: 'running' }
});
filterId = customProcessFilter.id;
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.checkFilterIsDisplayed(processFilter.edit_icon);
await userFiltersApi.updateUserProcessInstanceFilter(filterId, {
appId: null,
name: processFilter.edit_icon,
icon: 'glyphicon-cloud',
filter: { sort: 'created-desc', name: '', state: 'running' }
});
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.checkFilterIsDisplayed(processFilter.edit_icon);
await processServiceTabBarPage.clickSettingsButton();
await appSettingsToggles.enableProcessFiltersIcon();
await processServiceTabBarPage.clickProcessButton();
await processFiltersPage.checkFilterIsDisplayed(processFilter.edit_icon);
await expect(await processFiltersPage.getFilterIcon(processFilter.edit_icon)).toEqual('cloud');
});
it('[C286452] Should display process filter icons only when showIcon property is set on true', async () => {
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.checkFilterHasNoIcon(processFilter.all);
await processServiceTabBarPage.clickSettingsButton();
await appSettingsToggles.enableProcessFiltersIcon();
await processServiceTabBarPage.clickProcessButton();
await processFiltersPage.checkFilterIsDisplayed(processFilter.all);
await expect(await processFiltersPage.getFilterIcon(processFilter.all)).toEqual('dashboard');
});
it('[C260475] Should be able to delete a filter on APS and check it on ADF', async () => {
customProcessFilter = await userFiltersApi.createUserProcessInstanceFilter({
appId: null,

View File

@@ -16,15 +16,14 @@
*/
import { browser } from 'protractor';
import { createApiService, ApplicationsUtil, LoginPage, StartProcessPage, UsersActions } from '@alfresco/adf-testing';
import { createApiService, ApplicationsUtil, LoginPage, StartProcessPage, UsersActions, UserModel } from '@alfresco/adf-testing';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ProcessServicesPage } from './../pages/process-services.page';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { ProcessListPage } from './../pages/process-list.page';
import { ProcessServicesPage } from '../pages/process-services.page';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { ProcessDetailsPage } from '../pages/process-details.page';
import { ProcessListPage } from '../pages/process-list.page';
describe('Empty Process List Test', () => {
const appWithProcess = browser.params.resources.Files.APP_WITH_PROCESSES;
const simpleAppWithUserForm = browser.params.resources.Files.SIMPLE_APP_WITH_USER_FORM;
@@ -37,7 +36,7 @@ describe('Empty Process List Test', () => {
const startProcessPage = new StartProcessPage();
const apiService = createApiService();
let user;
let user: UserModel;
beforeAll(async () => {
const usersActions = new UsersActions(apiService);
@@ -54,7 +53,7 @@ describe('Empty Process List Test', () => {
await applicationsService.importPublishDeployApp(simpleAppWithUserForm.file_path);
await loginPage.login(user.username, user.password);
});
});
it('[C260494] Should add process to list when a process is created', async () => {
await navigationBarPage.navigateToProcessServicesPage();

View File

@@ -15,20 +15,14 @@
* limitations under the License.
*/
import { createApiService,
ApplicationsUtil,
LoginPage,
PaginationPage,
ProcessUtil,
UsersActions
} from '@alfresco/adf-testing';
import { createApiService, ApplicationsUtil, LoginPage, PaginationPage, ProcessUtil, UsersActions, UserModel } from '@alfresco/adf-testing';
import { AppDefinitionRepresentation } from '@alfresco/js-api';
import { browser } from 'protractor';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { ProcessDetailsPage } from '../pages/process-details.page';
import { ProcessFiltersPage } from '../pages/process-filters.page';
describe('Process List - Pagination when adding processes', () => {
const app = browser.params.resources.Files.SIMPLE_APP_WITH_USER_FORM;
const loginPage = new LoginPage();
@@ -46,8 +40,8 @@ describe('Process List - Pagination when adding processes', () => {
fifteenValue: 15
};
let processUserModel;
let resultApp;
let processUserModel: UserModel;
let resultApp: AppDefinitionRepresentation;
beforeAll(async () => {
await apiService.loginWithProfile('admin');
@@ -80,7 +74,7 @@ describe('Process List - Pagination when adding processes', () => {
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.fifteen);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + itemsPerPage.fifteenValue * page + ' of 20' );
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + itemsPerPage.fifteenValue * page + ' of 20');
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.fifteenValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
@@ -96,7 +90,7 @@ describe('Process List - Pagination when adding processes', () => {
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.fifteen);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 16-25 of 25' );
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 16-25 of 25');
await expect(await processFiltersPage.numberOfProcessRows()).toBe(10);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsEnabled();

View File

@@ -24,9 +24,9 @@ import { createApiService,
ViewerPage,
ModelsActions
} from '@alfresco/adf-testing';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { AttachmentListPage } from './../pages/attachment-list.page';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { ProcessDetailsPage } from '../pages/process-details.page';
import { AttachmentListPage } from '../pages/attachment-list.page';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { FileModel } from '../../models/ACS/file.model';
import { browser } from 'protractor';
@@ -53,7 +53,9 @@ describe('Attachment list action menu for processes', () => {
});
const downloadedPngFile = pngFile.name;
let tenantId; let appId;
let tenantId: number;
let appId: number;
const processName = {
active: 'Active Process',
completed: 'Completed Process',

View File

@@ -15,26 +15,17 @@
* limitations under the License.
*/
import { createApiService,
ApplicationsUtil,
BrowserActions,
LoginPage,
StartProcessPage,
UsersActions
} from '@alfresco/adf-testing';
import { createApiService, ApplicationsUtil, LoginPage, StartProcessPage, UsersActions } from '@alfresco/adf-testing';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ProcessServicesPage } from './../pages/process-services.page';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { ProcessServiceTabBarPage } from './../pages/process-service-tab-bar.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { ProcessListPage } from './../pages/process-list.page';
import { RuntimeAppDefinitionsApi, UserFiltersApi, UserProcessInstanceFilterRepresentation } from '@alfresco/js-api';
import { ProcessServicesPage } from '../pages/process-services.page';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { ProcessServiceTabBarPage } from '../pages/process-service-tab-bar.page';
import { ProcessDetailsPage } from '../pages/process-details.page';
import { ProcessListPage } from '../pages/process-list.page';
import { browser } from 'protractor';
import { ProcessListDemoPage } from './../pages/process-list-demo.page';
import CONSTANTS = require('../../util/constants');
import { ProcessListDemoPage } from '../pages/process-list-demo.page';
describe('Process Filters Test', () => {
const app = browser.params.resources.Files.APP_WITH_DATE_FIELD_FORM;
const loginPage = new LoginPage();
@@ -50,10 +41,6 @@ describe('Process Filters Test', () => {
const apiService = createApiService();
const usersActions = new UsersActions(apiService);
const applicationsService = new ApplicationsUtil(apiService);
const userFiltersApi = new UserFiltersApi(apiService.getInstance());
const appsApi = new RuntimeAppDefinitionsApi(apiService.getInstance());
let appModel; let user;
const processTitle = {
running: 'Test_running',
@@ -62,18 +49,12 @@ describe('Process Filters Test', () => {
one: 'Test fake process one',
two: 'Test fake process two'
};
const processFilter = {
running: 'Running',
all: 'All',
completed: 'Completed'
};
beforeAll(async () => {
await apiService.loginWithProfile('admin');
user = await usersActions.createUser();
const user = await usersActions.createUser();
await apiService.login(user.username, user.password);
appModel = await applicationsService.importPublishDeployApp(app.file_path);
await applicationsService.importPublishDeployApp(app.file_path);
await loginPage.login(user.username, user.password);
});
@@ -107,7 +88,6 @@ describe('Process Filters Test', () => {
await startProcessPage.enterProcessName(processTitle.running);
await startProcessPage.clickFormStartProcessButton();
await processFiltersPage.checkFilterIsHighlighted(processFilter.running);
await processFiltersPage.selectFromProcessList(processTitle.running);
await processDetailsPage.propertiesList.waitVisible();
@@ -119,7 +99,6 @@ describe('Process Filters Test', () => {
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await processFiltersPage.clickAllFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilter.all);
await processFiltersPage.selectFromProcessList(processTitle.running);
await processFiltersPage.selectFromProcessList(processTitle.completed);
await processDetailsPage.propertiesList.waitVisible();
@@ -131,32 +110,10 @@ describe('Process Filters Test', () => {
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await processFiltersPage.clickCompletedFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilter.completed);
await processFiltersPage.selectFromProcessList(processTitle.completed);
await processDetailsPage.propertiesList.waitVisible();
});
it('[C280407] Should be able to access the filters with URL', async () => {
const defaultFiltersNumber = 3;
let processFilterUrl;
const deployedAppId = await applicationsService.getAppDefinitionId(appModel.id);
processFilterUrl = browser.baseUrl + '/activiti/apps/' + deployedAppId + '/processes/';
const taskAppFilters = await userFiltersApi.getUserProcessInstanceFilters({ appId: deployedAppId });
await processServicesPage.goToApp(app.title);
await processServiceTabBarPage.clickProcessButton();
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await expect(taskAppFilters.size).toBe(defaultFiltersNumber);
for (const filter of taskAppFilters.data) {
await BrowserActions.getUrl(processFilterUrl + filter.id);
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await processFiltersPage.checkFilterIsHighlighted(filter.name);
}
});
it('[C260463] Should Cancel process be displayed in Completed process filters', async () => {
await processServicesPage.goToApp(app.title);
await processServiceTabBarPage.clickProcessButton();
@@ -172,86 +129,8 @@ describe('Process Filters Test', () => {
await processListDemoPage.checkProcessIsNotDisplayed(processTitle.canceled);
await processFiltersPage.clickCompletedFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilter.completed);
await processListDemoPage.checkProcessIsDisplayed(processTitle.canceled);
await processFiltersPage.selectFromProcessList(processTitle.canceled);
await processDetailsPage.propertiesList.waitVisible();
});
it('[C213262] Default process filters', async () => {
await processServicesPage.goToApp(app.title);
await processServiceTabBarPage.clickProcessButton();
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.enterProcessName(processTitle.one);
await startProcessPage.clickFormStartProcessButton();
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await processListDemoPage.checkProcessIsDisplayed(processTitle.one);
await processFiltersPage.checkFilterIsHighlighted(processFilter.running);
await processDetailsPage.propertiesList.waitVisible();
await checkProcessInfoDrawer({ name: processTitle.one });
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.enterProcessName(processTitle.two);
await startProcessPage.clickFormStartProcessButton();
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
await processListDemoPage.checkProcessIsDisplayed(processTitle.one);
await processListDemoPage.checkProcessIsDisplayed(processTitle.two);
await processDetailsPage.cancelProcessButton.click();
await processListDemoPage.checkProcessIsNotDisplayed(processTitle.canceled);
await processFiltersPage.clickCompletedFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilter.completed);
await processListDemoPage.checkProcessIsDisplayed(processTitle.two);
await processFiltersPage.selectFromProcessList(processTitle.two);
await processFiltersPage.clickAllFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilter.all);
await processListDemoPage.checkProcessIsDisplayed(processTitle.two);
await processFiltersPage.selectFromProcessList(processTitle.two);
});
it('[C260384] Edit default filter', async () => {
const runningFilter = (await getFilter()).find(filter => filter.name === 'Running');
await userFiltersApi
.updateUserProcessInstanceFilter(runningFilter.id, { ...runningFilter, name: 'Edited Running' });
await processServicesPage.goToApp(app.title);
await processServiceTabBarPage.clickProcessButton();
await processFiltersPage.checkFilterIsNotDisplayed('Running');
await processFiltersPage.checkFilterIsDisplayed('Edited Running');
});
it('[C260385] Delete default filter', async () => {
const allFilter = (await getFilter()).find(filter => filter.name === 'All');
await userFiltersApi.deleteUserProcessInstanceFilter(allFilter.id);
await processServicesPage.goToApp(app.title);
await processServiceTabBarPage.clickProcessButton();
await processFiltersPage.checkFilterIsNotDisplayed('All');
});
async function getFilter(): Promise<UserProcessInstanceFilterRepresentation[]> {
const apps = await appsApi.getAppDefinitions();
const { id: appId = 0 } = apps.data.find((application) => application.name === appModel.name);
const filters = await userFiltersApi.getUserProcessInstanceFilters({ appId });
return filters.data;
}
async function checkProcessInfoDrawer({ name }) {
await expect(await processDetailsPage.checkProcessTitleIsDisplayed()).toEqual(name);
await expect(await processDetailsPage.getProcessStatus()).toEqual(CONSTANTS.PROCESS_STATUS.RUNNING);
await expect(await processDetailsPage.getEndDate()).toEqual(CONSTANTS.PROCESS_END_DATE);
await expect(await processDetailsPage.getProcessCategory()).toEqual(CONSTANTS.PROCESS_CATEGORY);
await expect(await processDetailsPage.getBusinessKey()).toEqual(CONSTANTS.PROCESS_BUSINESS_KEY);
await expect(await processDetailsPage.getCreatedBy()).toEqual(`${user.firstName} ${user.lastName}`);
await expect(await processDetailsPage.getProcessDescription()).toEqual(CONSTANTS.PROCESS_DESCRIPTION);
}
});

View File

@@ -16,23 +16,16 @@
*/
import { browser } from 'protractor';
import { createApiService,
ApplicationsUtil,
LoginPage,
ModelsActions,
ProcessUtil,
UsersActions
} from '@alfresco/adf-testing';
import { ProcessServicesPage } from './../pages/process-services.page';
import { createApiService, ApplicationsUtil, LoginPage, ModelsActions, ProcessUtil, UsersActions, UserModel } from '@alfresco/adf-testing';
import { ProcessServicesPage } from '../pages/process-services.page';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ProcessServiceTabBarPage } from './../pages/process-service-tab-bar.page';
import { ProcessListPage } from './../pages/process-list.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { ProcessServiceTabBarPage } from '../pages/process-service-tab-bar.page';
import { ProcessListPage } from '../pages/process-list.page';
import { ProcessDetailsPage } from '../pages/process-details.page';
import * as moment from 'moment';
import { ProcessInstancesApi } from '@alfresco/js-api';
import { AppDefinitionRepresentation, ProcessInstanceRepresentation, ProcessInstancesApi } from '@alfresco/js-api';
describe('Process Instance Details', () => {
const app = browser.params.resources.Files.SIMPLE_APP_WITH_USER_FORM;
const loginPage = new LoginPage();
@@ -48,7 +41,10 @@ describe('Process Instance Details', () => {
const modelsActions = new ModelsActions(apiService);
const processApi = new ProcessInstancesApi(apiService.getInstance());
let appModel; let process; let user;
let appModel: AppDefinitionRepresentation;
let process: ProcessInstanceRepresentation;
let user: UserModel;
const PROCESS_DATE_FORMAT = 'll';
beforeAll(async () => {
@@ -70,13 +66,13 @@ describe('Process Instance Details', () => {
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
process = await processApi.getProcessInstance(processModel.id);
});
});
afterAll(async () => {
await modelsActions.deleteModel(appModel.id);
await apiService.loginWithProfile('admin');
await usersActions.deleteTenant(user.tenantId);
});
});
it('[C307031] Should display the created date in the default format', async () => {
await processDetailsPage.checkProcessHeaderDetailsAreVisible();

View File

@@ -15,19 +15,21 @@
* limitations under the License.
*/
import { createApiService,
import {
createApiService,
ApplicationsUtil,
BrowserActions,
LoginPage, ModelsActions,
LoginPage,
ModelsActions,
ProcessUtil,
UsersActions
UsersActions,
UserModel
} from '@alfresco/adf-testing';
import { ProcessListDemoPage } from './../pages/process-list-demo.page';
import { ProcessListDemoPage } from '../pages/process-list-demo.page';
import { browser } from 'protractor';
import { TaskFormsApi } from '@alfresco/js-api';
import { AppDefinitionRepresentation, ProcessInstanceRepresentation, TaskFormsApi } from '@alfresco/js-api';
describe('Process List Test', () => {
const appWithDateField = browser.params.resources.Files.APP_WITH_DATE_FIELD_FORM;
const appWithUserWidget = browser.params.resources.Files.APP_WITH_USER_WIDGET;
@@ -40,7 +42,9 @@ describe('Process List Test', () => {
const modelsActions = new ModelsActions(apiService);
const taskFormsApi = new TaskFormsApi(apiService.getInstance());
let appDateModel; let appUserWidgetModel; let user;
let appDateModel: AppDefinitionRepresentation;
let appUserWidgetModel: AppDefinitionRepresentation;
let user: UserModel;
const processList = ['Process With Date', 'Process With Date 2', 'Process With User Widget', 'Process With User Widget 2'];
@@ -56,8 +60,10 @@ describe('Process List Test', () => {
insertAppId: 'Insert App ID'
};
let appWithDateFieldId;
let procWithDate; let completedProcWithDate; let completedProcWithUserWidget;
let appWithDateFieldId: string | number;
let procWithDate: ProcessInstanceRepresentation;
let completedProcWithDate: ProcessInstanceRepresentation;
let completedProcWithUserWidget: ProcessInstanceRepresentation;
beforeAll(async () => {
await apiService.loginWithProfile('admin');
@@ -87,7 +93,7 @@ describe('Process List Test', () => {
await taskFormsApi.completeTaskForm(procWithUserWidgetTaskId.id, { values: { label: null } });
await loginPage.login(user.username, user.password);
});
});
afterAll(async () => {
await modelsActions.deleteModel(appDateModel.id);
@@ -96,11 +102,11 @@ describe('Process List Test', () => {
await apiService.loginWithProfile('admin');
await usersActions.deleteTenant(user.tenantId);
});
});
beforeEach(async () => {
await BrowserActions.getUrl(browser.baseUrl + '/process-list');
});
});
it('[C286638] Should display all process by default', async () => {
await processListDemoPage.checkAppIdFieldIsDisplayed();

View File

@@ -1,381 +0,0 @@
/*!
* @license
* Copyright © 2005-2023 Hyland Software, Inc. and its affiliates. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { createApiService,
ApplicationsUtil,
LoginPage,
PaginationPage,
ProcessUtil,
UsersActions
} from '@alfresco/adf-testing';
import { browser } from 'protractor';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { ProcessFiltersPage } from './../pages/process-filters.page';
describe('Process List - Pagination', () => {
const app = browser.params.resources.Files.SIMPLE_APP_WITH_USER_FORM;
const loginPage = new LoginPage();
const navigationBarPage = new NavigationBarPage();
const paginationPage = new PaginationPage();
const processFiltersPage = new ProcessFiltersPage();
const processDetailsPage = new ProcessDetailsPage();
const apiService = createApiService();
const usersActions = new UsersActions(apiService);
const applicationsService = new ApplicationsUtil(apiService);
const itemsPerPage = {
five: '5',
fiveValue: 5,
ten: '10',
tenValue: 10,
fifteen: '15',
fifteenValue: 15,
twenty: '20',
twentyValue: 20,
default: '25'
};
const processFilterRunning = 'Running';
let deployedTestApp;
let processUserModel;
const nrOfProcesses = 20;
let page;
let totalPages;
beforeAll(async () => {
await apiService.loginWithProfile('admin');
processUserModel = await usersActions.createUser();
await apiService.login(processUserModel.username, processUserModel.password);
deployedTestApp = await applicationsService.importPublishDeployApp(app.file_path);
await loginPage.login(processUserModel.username, processUserModel.password);
});
describe('With processes Pagination', () => {
beforeAll(async () => {
await apiService.login(processUserModel.username, processUserModel.password);
for (let i = 0; i < nrOfProcesses; i++) {
await new ProcessUtil(apiService).startProcessOfApp(deployedTestApp.name);
}
});
beforeEach(async () => {
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
});
it('[C261042] Should display default pagination', async () => {
page = 1;
totalPages = 1;
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.twenty);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + nrOfProcesses + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(nrOfProcesses);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
});
it('[C261043] Should be possible to Items per page to 15', async () => {
page = 1;
totalPages = 2;
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.fifteen);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.fifteen);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + itemsPerPage.fifteenValue * page + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.fifteenValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
page++;
await paginationPage.clickOnNextPage();
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.fifteen);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 16-' + nrOfProcesses + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(nrOfProcesses - itemsPerPage.fifteenValue);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsEnabled();
page = 1;
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.fifteen);
});
it('[C261044] Should be possible to Items per page to 10', async () => {
page = 1;
totalPages = 2;
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.ten);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + itemsPerPage.tenValue * page + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.tenValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
page++;
await paginationPage.clickOnNextPage();
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 11-' + nrOfProcesses + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.tenValue);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsEnabled();
page = 1;
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten);
});
it('[C261047] Should be possible to Items per page to 20', async () => {
page = 1;
totalPages = 1;
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.twenty);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.twenty);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + nrOfProcesses + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(nrOfProcesses);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.twenty);
});
it('[C261045] Should be possible to Items per page to 5', async () => {
let showing;
page = 1;
totalPages = 4;
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.five);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five);
showing = (itemsPerPage.fiveValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.fiveValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
page++;
await paginationPage.clickOnNextPage();
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five);
showing = (itemsPerPage.fiveValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 6-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.fiveValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsEnabled();
page++;
await paginationPage.clickOnNextPage();
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five);
showing = (itemsPerPage.fiveValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 11-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.fiveValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsEnabled();
page++;
await paginationPage.clickOnNextPage();
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five);
showing = (itemsPerPage.fiveValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 16-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.fiveValue);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsEnabled();
page = 1;
await (await (await navigationBarPage.navigateToProcessServicesPage()).goToTaskApp()).clickProcessButton();
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.five);
});
it('[C261049] Should be possible to open page number dropdown', async () => {
let showing;
page = 1;
totalPages = 2;
await processFiltersPage.clickRunningFilterButton();
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.ten);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten);
showing = (itemsPerPage.tenValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.tenValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
await paginationPage.clickOnPageDropdown();
await expect(await paginationPage.getPageDropdownOptions()).toEqual(['1', '2']);
page = 2;
await paginationPage.clickOnPageDropdownOption('2');
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten);
showing = (itemsPerPage.tenValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 11-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.tenValue);
await paginationPage.checkNextPageButtonIsDisabled();
await paginationPage.checkPreviousPageButtonIsEnabled();
await paginationPage.clickOnPageDropdown();
await expect(await paginationPage.getPageDropdownOptions()).toEqual(['1', '2']);
page = 1;
await paginationPage.clickOnPageDropdownOption('1');
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await expect(await paginationPage.getCurrentPage()).toEqual('Page ' + page);
await expect(await paginationPage.getTotalPages()).toEqual('of ' + totalPages);
await expect(await paginationPage.getCurrentItemsPerPage()).toEqual(itemsPerPage.ten);
showing = (itemsPerPage.tenValue * page);
await expect(await paginationPage.getPaginationRange()).toEqual('Showing 1-' + showing + ' of ' + nrOfProcesses);
await expect(await processFiltersPage.numberOfProcessRows()).toBe(itemsPerPage.tenValue);
await paginationPage.checkNextPageButtonIsEnabled();
await paginationPage.checkPreviousPageButtonIsDisabled();
});
it('[C261048] Should be possible to sort processes by name', async () => {
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.twenty);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await processFiltersPage.sortByName('ASC');
await processFiltersPage.waitForTableBody();
await processFiltersPage.checkProcessesSortedByNameAsc();
await processFiltersPage.sortByName('DESC');
await processFiltersPage.waitForTableBody();
await processFiltersPage.checkProcessesSortedByNameDesc();
});
it('[C286260] Should keep sorting when changing \'Items per page\'', async () => {
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.checkFilterIsHighlighted(processFilterRunning);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await paginationPage.selectItemsPerPage(itemsPerPage.twenty);
await processDetailsPage.checkProcessTitleIsDisplayed();
await processFiltersPage.waitForTableBody();
await processFiltersPage.sortByName('ASC');
await processFiltersPage.waitForTableBody();
await processFiltersPage.checkProcessesSortedByNameAsc();
await paginationPage.selectItemsPerPage(itemsPerPage.five);
await processFiltersPage.waitForTableBody();
await processFiltersPage.checkProcessesSortedByNameAsc();
});
});
});

View File

@@ -30,15 +30,14 @@ import { createApiService,
import { browser } from 'protractor';
import { FileModel } from '../../models/ACS/file.model';
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
import { AttachmentListPage } from './../pages/attachment-list.page';
import { ProcessDetailsPage } from './../pages/process-details.page';
import { ProcessFiltersPage } from './../pages/process-filters.page';
import { ProcessServicesPage } from './../pages/process-services.page';
import { ProcessServiceTabBarPage } from './../pages/process-service-tab-bar.page';
import { ProcessInstancesApi } from '@alfresco/js-api';
import { AttachmentListPage } from '../pages/attachment-list.page';
import { ProcessDetailsPage } from '../pages/process-details.page';
import { ProcessFiltersPage } from '../pages/process-filters.page';
import { ProcessServicesPage } from '../pages/process-services.page';
import { ProcessServiceTabBarPage } from '../pages/process-service-tab-bar.page';
import { AppDefinitionRepresentation, ProcessInstancesApi } from '@alfresco/js-api';
describe('Start Process Component', () => {
const app = browser.params.resources.Files.APP_WITH_PROCESSES;
const simpleApp = browser.params.resources.Files.WIDGETS_SMOKE_TEST;
const dateFormApp = browser.params.resources.Files.APP_WITH_DATE_FIELD_FORM;
@@ -62,7 +61,9 @@ describe('Start Process Component', () => {
let procUserModel: UserModel;
let secondProcUserModel: UserModel;
let appCreated; let simpleAppCreated; let dateFormAppCreated;
let appCreated: AppDefinitionRepresentation;
let simpleAppCreated: AppDefinitionRepresentation;
let dateFormAppCreated: AppDefinitionRepresentation;
const processName255Characters = StringUtil.generateRandomString(255);
const processNameBiggerThen255Characters = StringUtil.generateRandomString(256);
@@ -77,7 +78,6 @@ describe('Start Process Component', () => {
});
describe('Provider: BPM', () => {
beforeAll(async () => {
await apiService.loginWithProfile('admin');
@@ -121,7 +121,6 @@ describe('Start Process Component', () => {
});
describe(' Once logged with user with app', () => {
beforeEach(async () => {
await loginPage.login(secondProcUserModel.username, secondProcUserModel.password);
await navigationBarPage.navigateToProcessServicesPage();
@@ -264,7 +263,9 @@ describe('Start Process Component', () => {
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
await startProcessPage.enterProcessName('Type');
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(
browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name
);
await startProcessPage.clickStartProcessButton();
await processFiltersPage.clickRunningFilterButton();
await processFiltersPage.selectFromProcessList('Type');
@@ -278,7 +279,9 @@ describe('Start Process Component', () => {
await startProcessPage.typeProcessDefinition('process');
await startProcessPage.pressDownArrowAndEnter();
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(
browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name
);
});
it('[C286514] Should the process definition input be cleared when clicking on options drop down ', async () => {
@@ -288,7 +291,9 @@ describe('Start Process Component', () => {
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.typeProcessDefinition('process');
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(
browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name
);
await startProcessPage.clickProcessDropdownArrow();
await expect(await startProcessPage.getProcessDefinitionValue()).toBe('');