[ACA-3390]Add startProcessWithApplication method on StartProcessPage (#5741)

* Add startProcessWithApplication method on StartProcessPage

* Removed one method

* Fix comments
This commit is contained in:
Cristina Jalba
2020-06-02 12:31:32 +03:00
committed by GitHub
parent 0a4f792854
commit 6b06fd6364
4 changed files with 40 additions and 21 deletions

View File

@@ -182,8 +182,8 @@ describe('Start Process Component', () => {
await startProcessPage.checkStartProcessButtonIsDisabled();
await startProcessPage.clickProcessDropdownArrow();
await startProcessPage.checkOptionIsDisplayed(processModelWithSe);
await startProcessPage.checkOptionIsDisplayed(processModelWithoutSe);
await startProcessPage.checkProcessOptionIsDisplayed(processModelWithSe);
await startProcessPage.checkProcessOptionIsDisplayed(processModelWithoutSe);
});
it('[C260443] Should be possible to start a process without start event', async () => {
@@ -241,9 +241,9 @@ describe('Start Process Component', () => {
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.typeProcessDefinition('process');
await startProcessPage.checkOptionIsDisplayed(processModelWithoutSe);
await startProcessPage.checkOptionIsDisplayed(processModelWithSe);
await startProcessPage.selectOption(processModelWithoutSe);
await startProcessPage.checkProcessOptionIsDisplayed(processModelWithoutSe);
await startProcessPage.checkProcessOptionIsDisplayed(processModelWithSe);
await startProcessPage.selectProcessOption(processModelWithoutSe);
await startProcessPage.checkStartProcessButtonIsEnabled();
});
@@ -253,9 +253,9 @@ describe('Start Process Component', () => {
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.typeProcessDefinition(processModelWithoutSe);
await startProcessPage.checkOptionIsDisplayed(processModelWithoutSe);
await startProcessPage.checkOptionIsNotDisplayed(processModelWithSe);
await startProcessPage.selectOption(processModelWithoutSe);
await startProcessPage.checkProcessOptionIsDisplayed(processModelWithoutSe);
await startProcessPage.checkProcessOptionIsNotDisplayed(processModelWithSe);
await startProcessPage.selectProcessOption(processModelWithoutSe);
await startProcessPage.checkStartProcessButtonIsEnabled();
});
@@ -275,7 +275,7 @@ describe('Start Process Component', () => {
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.enterProcessName('Type');
await startProcessPage.typeProcessDefinition(processModelWithoutSe);
await startProcessPage.selectOption(processModelWithoutSe);
await startProcessPage.selectProcessOption(processModelWithoutSe);
await startProcessPage.checkStartProcessButtonIsEnabled();
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(processModelWithoutSe);
await startProcessPage.clickStartProcessButton();
@@ -300,7 +300,7 @@ describe('Start Process Component', () => {
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.typeProcessDefinition('process');
await startProcessPage.selectOption(processModelWithoutSe);
await startProcessPage.selectProcessOption(processModelWithoutSe);
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(processModelWithoutSe);
await startProcessPage.clickProcessDropdownArrow();

View File

@@ -76,7 +76,7 @@ describe('Stencil', () => {
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.startProcess({ name, processName: app.processName });
await startProcessPage.startProcess(name, app.processName);
await processListDemoPage.checkProcessIsDisplayed(name);
await processFiltersPage.selectFromProcessList(name);

View File

@@ -88,7 +88,7 @@ describe('Task Assignee', () => {
await processListPage.checkProcessListIsDisplayed();
await processFiltersPage.clickCreateProcessButton();
await processFiltersPage.clickNewProcessDropdown();
await startProcessPage.startProcess({ name , processName: app.processNames[0] });
await startProcessPage.startProcess(name, app.processNames[0]);
await processFiltersPage.selectFromProcessList(name);
await processDetailsPage.clickOnActiveTask();

View File

@@ -25,6 +25,7 @@ export class StartProcessPage {
defaultProcessName: ElementFinder = element(by.css('input[id="processName"]'));
processNameInput: ElementFinder = element(by.id('processName'));
disabledSelectProcessDropdown: ElementFinder = element(by.css('input[id="processDefinitionName"][disabled]'));
selectProcessDropdownArrow: ElementFinder = element(by.css('button[id="adf-select-process-dropdown"]'));
cancelProcessButton: ElementFinder = element(by.id('cancel_process'));
formStartProcessButton: ElementFinder = element(by.css('button[data-automation-id="adf-form-start process"]'));
@@ -33,7 +34,8 @@ export class StartProcessPage {
processDefinition: ElementFinder = element(by.css('input[id="processDefinitionName"]'));
processDefinitionOptionsPanel: ElementFinder = element(by.css('div[class*="mat-autocomplete-panel"]'));
dropdownPage = new DropdownPage();
processDefinitionDropdown = new DropdownPage(element(by.id('adf-select-process-dropdown')));
applicationDropdown = new DropdownPage(element(by.css('[data-automation-id*="start-process-app"] div[class="mat-select-arrow"]')));
async checkNoProcessMessage(): Promise<void> {
await BrowserVisibility.waitUntilElementIsVisible(this.noProcess);
@@ -64,23 +66,28 @@ export class StartProcessPage {
async selectFromProcessDropdown(name): Promise<void> {
await this.clickProcessDropdownArrow();
await this.selectOption(name);
await this.selectProcessOption(name);
}
async selectFromApplicationDropdown(name): Promise<void> {
await this.applicationDropdown.clickDropdown();
await this.applicationDropdown.selectOption(name);
}
async clickProcessDropdownArrow(): Promise<void> {
await BrowserActions.click(this.selectProcessDropdownArrow);
}
async checkOptionIsDisplayed(name): Promise<void> {
await this.dropdownPage.checkOptionIsDisplayed(name);
async checkProcessOptionIsDisplayed(name): Promise<void> {
await this.processDefinitionDropdown.checkOptionIsDisplayed(name);
}
async checkOptionIsNotDisplayed(name): Promise<void> {
await this.dropdownPage.checkOptionIsNotDisplayed(name);
async checkProcessOptionIsNotDisplayed(name): Promise<void> {
await this.processDefinitionDropdown.checkOptionIsNotDisplayed(name);
}
async selectOption(name): Promise<void> {
await this.dropdownPage.selectOption(name);
async selectProcessOption(name): Promise<void> {
await this.processDefinitionDropdown.selectOption(name);
}
async typeProcessDefinition(name): Promise<void> {
@@ -145,9 +152,21 @@ export class StartProcessPage {
return new FormFields();
}
async startProcess({name, processName }) {
async checkProcessDefinitionDropdownIsEnabled(): Promise<void> {
await BrowserVisibility.waitUntilElementIsNotVisible(this.disabledSelectProcessDropdown);
}
async startProcess(name: string, processName: string) {
await this.enterProcessName(name);
await this.selectFromProcessDropdown(processName);
await this.clickStartProcessButton();
}
async startProcessWithApplication(name: string, applicationName: string, processName: string) {
await this.enterProcessName(name);
await this.selectFromApplicationDropdown(applicationName);
await this.checkProcessDefinitionDropdownIsEnabled();
await this.selectFromProcessDropdown(processName);
await this.clickStartProcessButton();
}
}