mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-09-17 14:21:29 +00:00
added POM structure for process service
This commit is contained in:
3
.gitignore
vendored
3
.gitignore
vendored
@@ -34,3 +34,6 @@ licenses.txt
|
|||||||
.DS_Store
|
.DS_Store
|
||||||
|
|
||||||
.angular
|
.angular
|
||||||
|
/test-results/
|
||||||
|
/playwright-report/
|
||||||
|
/playwright/.cache/
|
||||||
|
@@ -8,4 +8,5 @@
|
|||||||
|
|
||||||
export enum ComponentTitles {
|
export enum ComponentTitles {
|
||||||
processServicesCloud = 'process-services-cloud',
|
processServicesCloud = 'process-services-cloud',
|
||||||
|
processServices = 'process-services',
|
||||||
}
|
}
|
||||||
|
@@ -33,7 +33,9 @@ export class BaseStories extends PlaywrightBase {
|
|||||||
async navigateTo(navigationParameters: NavigationParameters): Promise<void> {
|
async navigateTo(navigationParameters: NavigationParameters): Promise<void> {
|
||||||
await this.page.goto(`/iframe.html?args=&viewMode=story&id=${this.buildStoryId(navigationParameters)}`, {
|
await this.page.goto(`/iframe.html?args=&viewMode=story&id=${this.buildStoryId(navigationParameters)}`, {
|
||||||
waitUntil: 'networkidle',
|
waitUntil: 'networkidle',
|
||||||
timeout: timeouts.large
|
timeout: timeouts.globalSpec
|
||||||
});
|
})
|
||||||
|
await this.page.waitForTimeout(3000);
|
||||||
|
await this.page.screenshot({ path: 'screenshot.png', fullPage: true });
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -90,6 +90,10 @@ export const getGlobalConfig = (): PlaywrightTestConfig => {
|
|||||||
{
|
{
|
||||||
name: 'Process Services Cloud : Groups',
|
name: 'Process Services Cloud : Groups',
|
||||||
testMatch: /.groups-cloud*\.e2e\.ts/
|
testMatch: /.groups-cloud*\.e2e\.ts/
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: 'Process Services : Tasks',
|
||||||
|
testMatch: /.task-assignee*\.e2e\.ts/
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
|
|
||||||
|
@@ -0,0 +1,11 @@
|
|||||||
|
import { BaseComponent } from '../../page-object/components/base.component';
|
||||||
|
import { Page } from '@playwright/test';
|
||||||
|
|
||||||
|
export class processServices extends BaseComponent {
|
||||||
|
private static rootElement = 'Process Services';
|
||||||
|
|
||||||
|
constructor(page: Page, rootElement = processServices.rootElement) {
|
||||||
|
super(page, rootElement);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
@@ -0,0 +1,13 @@
|
|||||||
|
import { BaseStories } from '../../page-object';
|
||||||
|
import { test as base } from '@playwright/test';
|
||||||
|
import { ComponentTitles } from '../../models/component-titles.model';
|
||||||
|
|
||||||
|
|
||||||
|
interface Pages {
|
||||||
|
processServices: BaseStories;
|
||||||
|
}
|
||||||
|
|
||||||
|
export const test = base.extend<Pages>({
|
||||||
|
processServices: async ({ page }, use) => { await use(new BaseStories(page, ComponentTitles.processServices)); },
|
||||||
|
|
||||||
|
});
|
19
e2e-playwright/process-services/task-assignee.e2e.ts
Normal file
19
e2e-playwright/process-services/task-assignee.e2e.ts
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
import { test } from "./fixtures/page-initialization";
|
||||||
|
|
||||||
|
test.describe.only('Task Assignee', () => {
|
||||||
|
|
||||||
|
test('Candidate User Assignee', async ({ processServices }) => {
|
||||||
|
await processServices.navigateTo({moduleNames:['adf-people'], componentName: 'adf-people', story: 'adf-people' });
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
// test.beforeAll(async () => {
|
||||||
|
// //await processServices.navigateTo({moduleNames:['people-cloud'], componentName: 'people-cloud', story: 'valid-preselected-users' });
|
||||||
|
|
||||||
|
// test('[C260387] Should the running process be displayed when clicking on Running filter', async ({ processServices }) => {
|
||||||
|
|
||||||
|
// await processServices.navigateTo({moduleNames:['people-cloud'], componentName: 'people-cloud', story: 'valid-preselected-users' });
|
||||||
|
|
||||||
|
// });
|
||||||
|
// });
|
@@ -1,111 +0,0 @@
|
|||||||
import { createApiService,
|
|
||||||
ApplicationsUtil,
|
|
||||||
LoginPage,
|
|
||||||
StartProcessPage,
|
|
||||||
UserModel,
|
|
||||||
UsersActions
|
|
||||||
} from '@alfresco/adf-testing';
|
|
||||||
import { NavigationBarPage } from 'e2e/core/pages/navigation-bar.page';
|
|
||||||
import { ProcessServicesPage } from 'e2e/process-services/pages/process-services.page';
|
|
||||||
import { ProcessFiltersPage } from 'e2e/process-services/pages/process-filters.page';
|
|
||||||
import { ProcessServiceTabBarPage } from 'e2e/process-services/pages/process-service-tab-bar.page';
|
|
||||||
import { ProcessDetailsPage } from 'e2e/process-services/pages/process-details.page';
|
|
||||||
import { ProcessListPage } from '@alfresco/adf-testing';
|
|
||||||
//import { Browser } from '@playwright/test';
|
|
||||||
|
|
||||||
import { browser } from 'protractor';
|
|
||||||
import { TasksPage } from 'e2e/process-services/pages/tasks.page';
|
|
||||||
|
|
||||||
import CONSTANTS = require('../../util/constants');
|
|
||||||
import { AdminGroupsApi } from '@alfresco/js-api';
|
|
||||||
|
|
||||||
import { test,expect } from 'e2e-playwright/process-services-cloud/fixtures/page-initialization';
|
|
||||||
|
|
||||||
test.describe('Task Assignee', () => {
|
|
||||||
|
|
||||||
const app = browser.params.resources.Files.TEST_ASSIGNEE;
|
|
||||||
|
|
||||||
const loginPage = new LoginPage();
|
|
||||||
const navigationBarPage = new NavigationBarPage();
|
|
||||||
const processServicesPage = new ProcessServicesPage();
|
|
||||||
const processListPage = new ProcessListPage();
|
|
||||||
const processFiltersPage = new ProcessFiltersPage();
|
|
||||||
const startProcessPage = new StartProcessPage();
|
|
||||||
const processServiceTabBarPage = new ProcessServiceTabBarPage();
|
|
||||||
const processDetailsPage = new ProcessDetailsPage();
|
|
||||||
const taskPage = new TasksPage();
|
|
||||||
|
|
||||||
const apiService = createApiService();
|
|
||||||
const usersActions = new UsersActions(apiService);
|
|
||||||
const applicationsService = new ApplicationsUtil(apiService);
|
|
||||||
const adminGroupsApi = new AdminGroupsApi(apiService.getInstance());
|
|
||||||
|
|
||||||
test.describe('Candidate User Assignee', () => {
|
|
||||||
|
|
||||||
let user: UserModel;
|
|
||||||
|
|
||||||
beforeEach(async () => {
|
|
||||||
await apiService.loginWithProfile('admin');
|
|
||||||
|
|
||||||
user = await usersActions.createUser(new UserModel({
|
|
||||||
firstName: app.candidate.firstName,
|
|
||||||
lastName: app.candidate.lastName
|
|
||||||
}));
|
|
||||||
|
|
||||||
try {// creates group if not available
|
|
||||||
await adminGroupsApi.createNewGroup({
|
|
||||||
'name': app.candidateGroup,
|
|
||||||
'tenantId': user.tenantId,
|
|
||||||
'type': 1
|
|
||||||
});
|
|
||||||
} catch (e) {
|
|
||||||
}
|
|
||||||
|
|
||||||
await apiService.login(user.username, user.password);
|
|
||||||
await applicationsService.importPublishDeployApp(app.file_path, { renewIdmEntries: true });
|
|
||||||
|
|
||||||
await loginPage.login(user.username, user.password);
|
|
||||||
});
|
|
||||||
|
|
||||||
afterEach(async () => {
|
|
||||||
await apiService.loginWithProfile('admin');
|
|
||||||
await usersActions.deleteTenant(user.tenantId);
|
|
||||||
await navigationBarPage.clickLogoutButton();
|
|
||||||
});
|
|
||||||
|
|
||||||
beforeEach(async () => {
|
|
||||||
await navigationBarPage.navigateToProcessServicesPage();
|
|
||||||
await processServicesPage.checkApsContainer();
|
|
||||||
});
|
|
||||||
|
|
||||||
test('[C260387] Should the running process be displayed when clicking on Running filter', async () => {
|
|
||||||
const name = 'sample-process-one';
|
|
||||||
await processServicesPage.goToApp(app.title);
|
|
||||||
await processServiceTabBarPage.clickProcessButton();
|
|
||||||
await expect(await processListPage.isProcessListDisplayed()).toEqual(true);
|
|
||||||
await processFiltersPage.clickCreateProcessButton();
|
|
||||||
await processFiltersPage.clickNewProcessDropdown();
|
|
||||||
await startProcessPage.startProcess(name, app.processNames[0]);
|
|
||||||
await processFiltersPage.selectFromProcessList(name);
|
|
||||||
await processDetailsPage.activeTask.click();
|
|
||||||
|
|
||||||
await taskPage.tasksListPage().checkContentIsDisplayed(app.userTasks.simple.one);
|
|
||||||
await taskPage.tasksListPage().selectRow(app.userTasks.simple.one);
|
|
||||||
await taskPage.taskDetails().clickCompleteFormTask();
|
|
||||||
await taskPage.tasksListPage().checkContentIsNotDisplayed(app.userTasks.simple.one);
|
|
||||||
|
|
||||||
await taskPage.filtersPage().goToFilter(CONSTANTS.TASK_FILTERS.MY_TASKS);
|
|
||||||
await taskPage.tasksListPage().checkContentIsNotDisplayed(app.userTasks.simple.one);
|
|
||||||
|
|
||||||
await taskPage.filtersPage().goToFilter(CONSTANTS.TASK_FILTERS.COMPLETED_TASKS);
|
|
||||||
await taskPage.tasksListPage().checkContentIsNotDisplayed(app.userTasks.simple.one);
|
|
||||||
|
|
||||||
await taskPage.filtersPage().goToFilter(CONSTANTS.TASK_FILTERS.MY_TASKS);
|
|
||||||
await taskPage.taskDetails().clickCompleteFormTask();
|
|
||||||
await taskPage.tasksListPage().checkContentIsNotDisplayed(app.userTasks.simple.two);
|
|
||||||
|
|
||||||
await taskPage.filtersPage().goToFilter(CONSTANTS.TASK_FILTERS.COMPLETED_TASKS);
|
|
||||||
await taskPage.tasksListPage().checkContentIsDisplayed(app.userTasks.simple.two);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
830
package-lock.json
generated
830
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@@ -113,7 +113,7 @@
|
|||||||
"@nrwl/storybook": "14.5.4",
|
"@nrwl/storybook": "14.5.4",
|
||||||
"@nrwl/workspace": "14.5.4",
|
"@nrwl/workspace": "14.5.4",
|
||||||
"@paperist/types-remark": "0.1.3",
|
"@paperist/types-remark": "0.1.3",
|
||||||
"@playwright/test": "^1.29.2",
|
"@playwright/test": "^1.32.1",
|
||||||
"@quanzo/change-font-size": "1.0.0",
|
"@quanzo/change-font-size": "1.0.0",
|
||||||
"@storybook/addon-essentials": "6.5.10",
|
"@storybook/addon-essentials": "6.5.10",
|
||||||
"@storybook/angular": "6.5.10",
|
"@storybook/angular": "6.5.10",
|
||||||
|
BIN
screenshot.png
Normal file
BIN
screenshot.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 30 KiB |
Reference in New Issue
Block a user