mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACA-4474]Add isStartProcessButtonEnabled method
* [ACA-4474] Add isStartProcessButtonEnabled method * Refactor tests * Fix lint error * Refactor isStartProcessButtonEnabled method * Fix startProcessWithProcessDefinition method * Fix tests * no message * Fix isStartProcessButtonDisabled method * Exclude failing e2e
This commit is contained in:
@@ -112,7 +112,7 @@ describe('Task cloud visibility', async () => {
|
|||||||
await startProcessPage.selectFromProcessDropdown(browser.params.resources.ACTIVITI_CLOUD_APPS.SIMPLE_APP.processes.numbervisibilityprocess);
|
await startProcessPage.selectFromProcessDropdown(browser.params.resources.ACTIVITI_CLOUD_APPS.SIMPLE_APP.processes.numbervisibilityprocess);
|
||||||
|
|
||||||
await startProcessPage.enterProcessName(processName);
|
await startProcessPage.enterProcessName(processName);
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
await startProcessPage.clickStartProcessButton();
|
await startProcessPage.clickStartProcessButton();
|
||||||
|
|
||||||
await editProcessFilter.setFilter({ processName });
|
await editProcessFilter.setFilter({ processName });
|
||||||
|
@@ -77,7 +77,7 @@ describe('Start Process', () => {
|
|||||||
await browser.actions().sendKeys(protractor.Key.ENTER).perform();
|
await browser.actions().sendKeys(protractor.Key.ENTER).perform();
|
||||||
|
|
||||||
await startProcessPage.checkValidationErrorIsDisplayed(requiredError);
|
await startProcessPage.checkValidationErrorIsDisplayed(requiredError);
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(false);
|
await expect(await startProcessPage.isStartProcessButtonDisabled()).toEqual(true);
|
||||||
|
|
||||||
await BrowserActions.closeMenuAndDialogs();
|
await BrowserActions.closeMenuAndDialogs();
|
||||||
await startProcessPage.clickCancelProcessButton();
|
await startProcessPage.clickCancelProcessButton();
|
||||||
@@ -90,11 +90,11 @@ describe('Start Process', () => {
|
|||||||
await startProcessPage.selectFirstOptionFromProcessDropdown();
|
await startProcessPage.selectFirstOptionFromProcessDropdown();
|
||||||
|
|
||||||
await startProcessPage.enterProcessName(processName255Characters);
|
await startProcessPage.enterProcessName(processName255Characters);
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(true);
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
|
|
||||||
await startProcessPage.enterProcessName(processNameBiggerThen255Characters);
|
await startProcessPage.enterProcessName(processNameBiggerThen255Characters);
|
||||||
await startProcessPage.checkValidationErrorIsDisplayed(lengthValidationError);
|
await startProcessPage.checkValidationErrorIsDisplayed(lengthValidationError);
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(false);
|
await expect(await startProcessPage.isStartProcessButtonDisabled()).toEqual(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C291860] Should be able to start a process', async () => {
|
it('[C291860] Should be able to start a process', async () => {
|
||||||
@@ -105,8 +105,7 @@ describe('Start Process', () => {
|
|||||||
|
|
||||||
await startProcessPage.clearField(startProcessPage.processNameInput);
|
await startProcessPage.clearField(startProcessPage.processNameInput);
|
||||||
await startProcessPage.enterProcessName(processName);
|
await startProcessPage.enterProcessName(processName);
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(true);
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
await browser.sleep(400);
|
|
||||||
await startProcessPage.clickStartProcessButton();
|
await startProcessPage.clickStartProcessButton();
|
||||||
await processFilter.clickOnProcessFilters();
|
await processFilter.clickOnProcessFilters();
|
||||||
|
|
||||||
|
@@ -241,23 +241,23 @@ describe('Start Task Form', () => {
|
|||||||
|
|
||||||
it('[C311277] Should be able to start a process with a start event form - form validation', async () => {
|
it('[C311277] Should be able to start a process with a start event form - form validation', async () => {
|
||||||
await expect(await widget.textWidget().getErrorMessage('FirstName')).toContain('Enter no more than 10 characters');
|
await expect(await widget.textWidget().getErrorMessage('FirstName')).toContain('Enter no more than 10 characters');
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(false);
|
await expect(await startProcessPage.isStartProcessButtonDisabled()).toEqual(true);
|
||||||
|
|
||||||
await widget.textWidget().setValue('FirstName', 'Sam');
|
await widget.textWidget().setValue('FirstName', 'Sam');
|
||||||
await expect(await widget.textWidget().getErrorMessage('FirstName')).toContain('Enter at least 5 characters');
|
await expect(await widget.textWidget().getErrorMessage('FirstName')).toContain('Enter at least 5 characters');
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(false);
|
await expect(await startProcessPage.isStartProcessButtonDisabled()).toEqual(true);
|
||||||
await widget.numberWidget().setFieldValue('Number07vyx9', 9);
|
await widget.numberWidget().setFieldValue('Number07vyx9', 9);
|
||||||
await expect(await widget.numberWidget().getErrorMessage('Number07vyx9')).toContain('Can\'t be less than 10');
|
await expect(await widget.numberWidget().getErrorMessage('Number07vyx9')).toContain('Can\'t be less than 10');
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(false);
|
await expect(await startProcessPage.isStartProcessButtonDisabled()).toEqual(true);
|
||||||
await widget.numberWidget().setFieldValue('Number07vyx9', 99999);
|
await widget.numberWidget().setFieldValue('Number07vyx9', 99999);
|
||||||
await expect(await widget.numberWidget().getErrorMessage('Number07vyx9')).toContain('Can\'t be greater than 1,000');
|
await expect(await widget.numberWidget().getErrorMessage('Number07vyx9')).toContain('Can\'t be greater than 1,000');
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(false);
|
await expect(await startProcessPage.isStartProcessButtonDisabled()).toEqual(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C311277] Should be able to start a process with a start event form - claim and complete the process', async () => {
|
it('[C311277] Should be able to start a process with a start event form - claim and complete the process', async () => {
|
||||||
await widget.textWidget().setValue('FirstName', 'Sample');
|
await widget.textWidget().setValue('FirstName', 'Sample');
|
||||||
await widget.numberWidget().setFieldValue('Number07vyx9', 100);
|
await widget.numberWidget().setFieldValue('Number07vyx9', 100);
|
||||||
await expect(await startProcessPage.checkStartProcessButtonIsEnabled()).toBe(true);
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
await startProcessPage.clickStartProcessButton();
|
await startProcessPage.clickStartProcessButton();
|
||||||
await processFilter.clickRunningProcessesFilter();
|
await processFilter.clickRunningProcessesFilter();
|
||||||
await expect(await processFilter.getActiveFilterName()).toBe(CONSTANTS.PROCESS_FILTERS.RUNNING);
|
await expect(await processFilter.getActiveFilterName()).toBe(CONSTANTS.PROCESS_FILTERS.RUNNING);
|
||||||
|
@@ -190,8 +190,7 @@ describe('Start Process Component', () => {
|
|||||||
await startProcessPage.selectFromProcessDropdown(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.selectFromProcessDropdown(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
|
|
||||||
await expect(await startProcessPage.getDefaultName()).toEqual('My Default Name');
|
await expect(await startProcessPage.getDefaultName()).toEqual('My Default Name');
|
||||||
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C260449] Should be possible to start a process with start event', async () => {
|
it('[C260449] Should be possible to start a process with start event', async () => {
|
||||||
@@ -237,7 +236,7 @@ describe('Start Process Component', () => {
|
|||||||
await startProcessPage.checkProcessOptionIsDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.checkProcessOptionIsDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.checkProcessOptionIsDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_se_name);
|
await startProcessPage.checkProcessOptionIsDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_se_name);
|
||||||
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C286508] Should display only one option when typing an existent process definition', async () => {
|
it('[C286508] Should display only one option when typing an existent process definition', async () => {
|
||||||
@@ -249,7 +248,7 @@ describe('Start Process Component', () => {
|
|||||||
await startProcessPage.checkProcessOptionIsDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.checkProcessOptionIsDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.checkProcessOptionIsNotDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_se_name);
|
await startProcessPage.checkProcessOptionIsNotDisplayed(browser.params.resources.Files.APP_WITH_PROCESSES.process_se_name);
|
||||||
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C286509] Should select automatically the processDefinition when the app contains only one', async () => {
|
it('[C286509] Should select automatically the processDefinition when the app contains only one', async () => {
|
||||||
@@ -258,7 +257,7 @@ describe('Start Process Component', () => {
|
|||||||
await processFiltersPage.clickCreateProcessButton();
|
await processFiltersPage.clickCreateProcessButton();
|
||||||
await processFiltersPage.clickNewProcessDropdown();
|
await processFiltersPage.clickNewProcessDropdown();
|
||||||
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(simpleApp.title);
|
await expect(await startProcessPage.getProcessDefinitionValue()).toBe(simpleApp.title);
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
it('[C286511] Should be able to type the process definition and start a process', async () => {
|
it('[C286511] Should be able to type the process definition and start a process', async () => {
|
||||||
@@ -269,7 +268,7 @@ describe('Start Process Component', () => {
|
|||||||
await startProcessPage.typeProcessDefinition(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.typeProcessDefinition(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.selectProcessOption(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.enterProcessName('Type');
|
await startProcessPage.enterProcessName('Type');
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
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 startProcessPage.clickStartProcessButton();
|
||||||
await processFiltersPage.clickRunningFilterButton();
|
await processFiltersPage.clickRunningFilterButton();
|
||||||
@@ -441,7 +440,7 @@ describe('Start Process Component', () => {
|
|||||||
|
|
||||||
await startProcessPage.enterProcessName(processName255Characters);
|
await startProcessPage.enterProcessName(processName255Characters);
|
||||||
await startProcessPage.selectFromProcessDropdown(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
await startProcessPage.selectFromProcessDropdown(browser.params.resources.Files.APP_WITH_PROCESSES.process_wse_name);
|
||||||
await startProcessPage.checkStartProcessButtonIsEnabled();
|
await expect(await startProcessPage.isStartProcessButtonEnabled()).toEqual(true);
|
||||||
|
|
||||||
await startProcessPage.enterProcessName(processNameBiggerThen255Characters);
|
await startProcessPage.enterProcessName(processNameBiggerThen255Characters);
|
||||||
await startProcessPage.checkValidationErrorIsDisplayed(lengthValidationError);
|
await startProcessPage.checkValidationErrorIsDisplayed(lengthValidationError);
|
||||||
|
@@ -3,5 +3,6 @@
|
|||||||
"C272819": "https://alfresco.atlassian.net/browse/ADF-5385",
|
"C272819": "https://alfresco.atlassian.net/browse/ADF-5385",
|
||||||
"C290069": "https://alfresco.atlassian.net/browse/ADF-5387",
|
"C290069": "https://alfresco.atlassian.net/browse/ADF-5387",
|
||||||
"C291811": "https://alfresco.atlassian.net/browse/ADF-5405",
|
"C291811": "https://alfresco.atlassian.net/browse/ADF-5405",
|
||||||
"C291809": "https://alfresco.atlassian.net/browse/ADF-5405"
|
"C291809": "https://alfresco.atlassian.net/browse/ADF-5405",
|
||||||
|
"C307988": "https://alfresco.atlassian.net/browse/ADF-5421"
|
||||||
}
|
}
|
||||||
|
@@ -28,6 +28,7 @@ export class StartProcessCloudPage {
|
|||||||
cancelProcessButton = element(by.id('cancel_process'));
|
cancelProcessButton = element(by.id('cancel_process'));
|
||||||
formStartProcessButton = element(by.css('button[data-automation-id="adf-form-start process"]'));
|
formStartProcessButton = element(by.css('button[data-automation-id="adf-form-start process"]'));
|
||||||
startProcessButton = element(by.css('button[data-automation-id="btn-start"]'));
|
startProcessButton = element(by.css('button[data-automation-id="btn-start"]'));
|
||||||
|
startProcessButtonDisabled = element(by.css('button[data-automation-id="btn-start"][disabled]'));
|
||||||
noProcess = element(by.id('no-process-message'));
|
noProcess = element(by.id('no-process-message'));
|
||||||
processDefinition = element(by.css('input[id="processDefinitionName"]'));
|
processDefinition = element(by.css('input[id="processDefinitionName"]'));
|
||||||
processDefinitionOptionsPanel = element(by.css('div[class*="processDefinitionOptions"]'));
|
processDefinitionOptionsPanel = element(by.css('div[class*="processDefinitionOptions"]'));
|
||||||
@@ -83,12 +84,21 @@ export class StartProcessCloudPage {
|
|||||||
await BrowserActions.click(this.cancelProcessButton);
|
await BrowserActions.click(this.cancelProcessButton);
|
||||||
}
|
}
|
||||||
|
|
||||||
async checkStartProcessButtonIsEnabled(): Promise<boolean> {
|
async isStartProcessButtonEnabled(): Promise<boolean> {
|
||||||
await browser.sleep(2000); // waiting for API response
|
await BrowserVisibility.waitUntilElementIsNotVisible(this.startProcessButtonDisabled);
|
||||||
await BrowserVisibility.waitUntilElementIsVisible(this.startProcessButton);
|
await BrowserVisibility.waitUntilElementIsVisible(this.startProcessButton);
|
||||||
return this.startProcessButton.isEnabled();
|
return this.startProcessButton.isEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async isStartProcessButtonDisabled(): Promise<boolean> {
|
||||||
|
try {
|
||||||
|
await BrowserVisibility.waitUntilElementIsVisible(this.startProcessButtonDisabled);
|
||||||
|
return true;
|
||||||
|
} catch (error) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
async clickStartProcessButton(): Promise<void> {
|
async clickStartProcessButton(): Promise<void> {
|
||||||
await BrowserActions.click(this.startProcessButton);
|
await BrowserActions.click(this.startProcessButton);
|
||||||
}
|
}
|
||||||
@@ -111,7 +121,8 @@ export class StartProcessCloudPage {
|
|||||||
async startProcessWithProcessDefinition(processName: string, processDefinition: string) {
|
async startProcessWithProcessDefinition(processName: string, processDefinition: string) {
|
||||||
await this.selectFromProcessDropdown(processDefinition);
|
await this.selectFromProcessDropdown(processDefinition);
|
||||||
await this.enterProcessName(processName);
|
await this.enterProcessName(processName);
|
||||||
await this.checkStartProcessButtonIsEnabled();
|
await BrowserVisibility.waitUntilElementIsNotVisible(this.startProcessButtonDisabled);
|
||||||
|
await BrowserVisibility.waitUntilElementIsVisible(this.startProcessButton);
|
||||||
await this.clickStartProcessButton();
|
await this.clickStartProcessButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -31,6 +31,7 @@ export class StartProcessPage {
|
|||||||
cancelProcessButton = element(by.id('cancel_process'));
|
cancelProcessButton = element(by.id('cancel_process'));
|
||||||
formStartProcessButton = element(by.css('button[data-automation-id="adf-form-start process"]'));
|
formStartProcessButton = element(by.css('button[data-automation-id="adf-form-start process"]'));
|
||||||
startProcessButton = element(by.css('button[data-automation-id="btn-start"]'));
|
startProcessButton = element(by.css('button[data-automation-id="btn-start"]'));
|
||||||
|
startProcessButtonDisabled = element(by.css('button[data-automation-id="btn-start"][disabled]'));
|
||||||
noProcess = element(by.css('.adf-empty-content__title'));
|
noProcess = element(by.css('.adf-empty-content__title'));
|
||||||
processDefinition = element(by.css('input[id="processDefinitionName"]'));
|
processDefinition = element(by.css('input[id="processDefinitionName"]'));
|
||||||
processDefinitionOptionsPanel = element(by.css('div[class*="mat-autocomplete-panel"]'));
|
processDefinitionOptionsPanel = element(by.css('div[class*="mat-autocomplete-panel"]'));
|
||||||
@@ -124,8 +125,9 @@ export class StartProcessPage {
|
|||||||
return this.formStartProcessButton.isEnabled();
|
return this.formStartProcessButton.isEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
async checkStartProcessButtonIsEnabled() {
|
async isStartProcessButtonEnabled() {
|
||||||
await expect(await this.startProcessButton.isEnabled()).toBe(true);
|
await BrowserVisibility.waitUntilElementIsNotVisible(this.startProcessButtonDisabled);
|
||||||
|
return this.startProcessButton.isEnabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
async checkStartProcessButtonIsDisabled() {
|
async checkStartProcessButtonIsDisabled() {
|
||||||
|
Reference in New Issue
Block a user