mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[AAE-1453] added e2e tests for checking different configurations for people/group cloud widgets (#5446)
This commit is contained in:
committed by
GitHub
parent
4b1471d9c3
commit
9276333352
@@ -15,8 +15,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { ConfigEditorPage } from '../../configEditorPage';
|
import { BrowserActions, BrowserVisibility, ConfigEditorPage } from '@alfresco/adf-testing';
|
||||||
import { BrowserActions, BrowserVisibility } from '@alfresco/adf-testing';
|
|
||||||
import { by, element, ElementFinder } from 'protractor';
|
import { by, element, ElementFinder } from 'protractor';
|
||||||
|
|
||||||
export class FormDemoPage {
|
export class FormDemoPage {
|
||||||
|
@@ -17,18 +17,17 @@
|
|||||||
|
|
||||||
import {
|
import {
|
||||||
LoginSSOPage,
|
LoginSSOPage,
|
||||||
BrowserActions, FormPage, ProcessCloudWidgetPage
|
BrowserActions, FormPage, ProcessCloudWidgetPage, FormCloudComponentPage
|
||||||
} from '@alfresco/adf-testing';
|
} from '@alfresco/adf-testing';
|
||||||
import { browser } from 'protractor';
|
import { browser } from 'protractor';
|
||||||
import { customDateFormAPS2 } from '../../resources/forms/custom-date-form';
|
import { customDateFormAPS2 } from '../../resources/forms/custom-date-form';
|
||||||
import { FormCloudDemoPage } from '../../pages/adf/demo-shell/process-services-cloud/cloudFormDemoPage';
|
|
||||||
|
|
||||||
describe('Form Field Component - Dropdown Widget', () => {
|
describe('Form Field Component - Dropdown Widget', () => {
|
||||||
const loginSSOPage = new LoginSSOPage();
|
const loginSSOPage = new LoginSSOPage();
|
||||||
const widget = new ProcessCloudWidgetPage();
|
const widget = new ProcessCloudWidgetPage();
|
||||||
const dateWidget = widget.dateWidget();
|
const dateWidget = widget.dateWidget();
|
||||||
|
|
||||||
const formDemoPage = new FormCloudDemoPage();
|
const formDemoPage = new FormCloudComponentPage();
|
||||||
const formJson = JSON.parse(customDateFormAPS2);
|
const formJson = JSON.parse(customDateFormAPS2);
|
||||||
const formPage = new FormPage();
|
const formPage = new FormPage();
|
||||||
|
|
||||||
|
@@ -16,20 +16,29 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import {
|
import {
|
||||||
|
FormCloudComponentPage,
|
||||||
FormPage,
|
FormPage,
|
||||||
LoginSSOPage,
|
LoginSSOPage,
|
||||||
ProcessCloudWidgetPage
|
ProcessCloudWidgetPage
|
||||||
} from '@alfresco/adf-testing';
|
} from '@alfresco/adf-testing';
|
||||||
import { browser } from 'protractor';
|
import { browser } from 'protractor';
|
||||||
import { FormCloudDemoPage } from '../../pages/adf/demo-shell/process-services-cloud/cloudFormDemoPage';
|
import {
|
||||||
import { peopleJson, peopleMultipleModeJson, peopleRequiredJson, groupSingleJson, groupMultipleJson, groupRequiredJson } from '../../resources/forms/people-group-formwidget-json';
|
peopleSingleModeFormMock,
|
||||||
|
peopleMultipleModeFormMock,
|
||||||
|
peopleRequiredFormMock,
|
||||||
|
groupSingleModeFormMock,
|
||||||
|
groupMultipleModeFormMock,
|
||||||
|
groupRequiredFormMock,
|
||||||
|
peopleReadOnlyFormMock,
|
||||||
|
groupReadOnlyFormMock
|
||||||
|
} from '../../resources/forms/people-group-formwidget-mocks';
|
||||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||||
|
|
||||||
describe('People and Group of people Widgets', () => {
|
describe('People and Group of people Widgets', () => {
|
||||||
const loginSSOPage = new LoginSSOPage();
|
const loginSSOPage = new LoginSSOPage();
|
||||||
const navigationBarPage = new NavigationBarPage();
|
const navigationBarPage = new NavigationBarPage();
|
||||||
const formCloudDemoPage = new FormCloudDemoPage();
|
const formCloudComponentPage = new FormCloudComponentPage();
|
||||||
const widget = new ProcessCloudWidgetPage();
|
const widget = new ProcessCloudWidgetPage();
|
||||||
const peopleCloudWidget = widget.peopleCloudWidget();
|
const peopleCloudWidget = widget.peopleCloudWidget();
|
||||||
const groupCloudWidget = widget.groupCloudWidget();
|
const groupCloudWidget = widget.groupCloudWidget();
|
||||||
@@ -72,7 +81,8 @@ describe('People and Group of people Widgets', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('[C325002] Should be able to add a user in People field when Single mode is chosen', async () => {
|
it('[C325002] Should be able to add a user in People field when Single mode is chosen', async () => {
|
||||||
await formCloudDemoPage.setConfigToEditor(peopleJson);
|
await formCloudComponentPage.setConfigToEditor(peopleSingleModeFormMock);
|
||||||
|
|
||||||
await peopleCloudWidget.clickPeopleInput(widgets.peopleCloudWidgetSingleModeId);
|
await peopleCloudWidget.clickPeopleInput(widgets.peopleCloudWidgetSingleModeId);
|
||||||
await peopleCloudWidget.isPeopleWidgetVisible(peopleValueString.peopleCloudWidgetSingleModeField);
|
await peopleCloudWidget.isPeopleWidgetVisible(peopleValueString.peopleCloudWidgetSingleModeField);
|
||||||
const peopleSingleMode = await peopleCloudWidget.getFieldValue(widgets.peopleCloudWidgetSingleModeId);
|
const peopleSingleMode = await peopleCloudWidget.getFieldValue(widgets.peopleCloudWidgetSingleModeId);
|
||||||
@@ -83,7 +93,8 @@ describe('People and Group of people Widgets', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('[C325122] Should be able to add multiple users in People field when Multiple mode is chosen', async () => {
|
it('[C325122] Should be able to add multiple users in People field when Multiple mode is chosen', async () => {
|
||||||
await formCloudDemoPage.setConfigToEditor(peopleMultipleModeJson);
|
await formCloudComponentPage.setConfigToEditor(peopleMultipleModeFormMock);
|
||||||
|
|
||||||
await peopleCloudWidget.clickPeopleInput(widgets.peopleCloudWidgetMultipleModeId);
|
await peopleCloudWidget.clickPeopleInput(widgets.peopleCloudWidgetMultipleModeId);
|
||||||
await peopleCloudWidget.isPeopleWidgetVisible(peopleValueString.peopleCloudWidgetMultipleModeField);
|
await peopleCloudWidget.isPeopleWidgetVisible(peopleValueString.peopleCloudWidgetMultipleModeField);
|
||||||
const peopleMultipleMode = await peopleCloudWidget.getFieldValue(widgets.peopleCloudWidgetMultipleModeId);
|
const peopleMultipleMode = await peopleCloudWidget.getFieldValue(widgets.peopleCloudWidgetMultipleModeId);
|
||||||
@@ -95,8 +106,19 @@ describe('People and Group of people Widgets', () => {
|
|||||||
await peopleCloudWidget.checkSelectedPeople('Sales User');
|
await peopleCloudWidget.checkSelectedPeople('Sales User');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('[C325182] Should not be able to type in the People field if the readOnly option is checked', async () => {
|
||||||
|
await formCloudComponentPage.setConfigToEditor(peopleReadOnlyFormMock);
|
||||||
|
|
||||||
|
const readOnlyAttribute = await peopleCloudWidget.checkPeopleWidgetIsReadOnly();
|
||||||
|
const activePeopleField = await peopleCloudWidget.checkPeopleActiveField('HR User');
|
||||||
|
|
||||||
|
await expect (readOnlyAttribute).toBe(true);
|
||||||
|
await expect (activePeopleField).toBe(false);
|
||||||
|
});
|
||||||
|
|
||||||
it('[C325004] Should be able to save only for valid input in the People field if the Required option is selected ', async () => {
|
it('[C325004] Should be able to save only for valid input in the People field if the Required option is selected ', async () => {
|
||||||
await formCloudDemoPage.setConfigToEditor(peopleRequiredJson);
|
await formCloudComponentPage.setConfigToEditor(peopleRequiredFormMock);
|
||||||
|
|
||||||
await peopleCloudWidget.isPeopleWidgetVisible(peopleValueString.peopleCloudWidgetRequiredField);
|
await peopleCloudWidget.isPeopleWidgetVisible(peopleValueString.peopleCloudWidgetRequiredField);
|
||||||
await expect(await formPage.isSaveButtonDisabled()).toBe(true);
|
await expect(await formPage.isSaveButtonDisabled()).toBe(true);
|
||||||
await expect(await formPage.isValidationIconRed()).toBe(true);
|
await expect(await formPage.isValidationIconRed()).toBe(true);
|
||||||
@@ -111,7 +133,8 @@ describe('People and Group of people Widgets', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('[C325003] Should be able to add a user in Group of people field when Single mode is chosen', async () => {
|
it('[C325003] Should be able to add a user in Group of people field when Single mode is chosen', async () => {
|
||||||
await formCloudDemoPage.setConfigToEditor(groupSingleJson);
|
await formCloudComponentPage.setConfigToEditor(groupSingleModeFormMock);
|
||||||
|
|
||||||
await groupCloudWidget.isGroupWidgetVisible(groupValueString.groupCloudWidgetSingleModeField);
|
await groupCloudWidget.isGroupWidgetVisible(groupValueString.groupCloudWidgetSingleModeField);
|
||||||
const groupSingleMode = await groupCloudWidget.getGroupsFieldContent();
|
const groupSingleMode = await groupCloudWidget.getGroupsFieldContent();
|
||||||
await expect(groupSingleMode).toEqual('');
|
await expect(groupSingleMode).toEqual('');
|
||||||
@@ -122,7 +145,8 @@ describe('People and Group of people Widgets', () => {
|
|||||||
});
|
});
|
||||||
|
|
||||||
it('[C325123] Should be able to add multiple users in Group of people field when Multiple mode is chosen', async () => {
|
it('[C325123] Should be able to add multiple users in Group of people field when Multiple mode is chosen', async () => {
|
||||||
await formCloudDemoPage.setConfigToEditor(groupMultipleJson);
|
await formCloudComponentPage.setConfigToEditor(groupMultipleModeFormMock);
|
||||||
|
|
||||||
await groupCloudWidget.isGroupWidgetVisible(groupValueString.groupCloudWidgetMultipleModeField);
|
await groupCloudWidget.isGroupWidgetVisible(groupValueString.groupCloudWidgetMultipleModeField);
|
||||||
const groupSingleMode = await groupCloudWidget.getGroupsFieldContent();
|
const groupSingleMode = await groupCloudWidget.getGroupsFieldContent();
|
||||||
await expect(groupSingleMode).toEqual('');
|
await expect(groupSingleMode).toEqual('');
|
||||||
@@ -135,8 +159,19 @@ describe('People and Group of people Widgets', () => {
|
|||||||
await groupCloudWidget.checkSelectedGroup('sales');
|
await groupCloudWidget.checkSelectedGroup('sales');
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it('[C325183] Should not be able to type in the Group field if the readOnly option is checked', async () => {
|
||||||
|
await formCloudComponentPage.setConfigToEditor(groupReadOnlyFormMock);
|
||||||
|
|
||||||
|
const readOnlyGroupAttribute = await groupCloudWidget.checkGroupWidgetIsReadOnly();
|
||||||
|
const activeGroupField = await groupCloudWidget.checkGroupActiveField('hr');
|
||||||
|
|
||||||
|
await expect (readOnlyGroupAttribute).toBe(true);
|
||||||
|
await expect (activeGroupField).toBe(false);
|
||||||
|
});
|
||||||
|
|
||||||
it('[C325005] Should be able to save only for valid input in the Group of people field if the Required option is selected', async () => {
|
it('[C325005] Should be able to save only for valid input in the Group of people field if the Required option is selected', async () => {
|
||||||
await formCloudDemoPage.setConfigToEditor(groupRequiredJson);
|
await formCloudComponentPage.setConfigToEditor(groupRequiredFormMock);
|
||||||
|
|
||||||
await groupCloudWidget.isGroupWidgetVisible(groupValueString.groupCloudWidgetRequiredField);
|
await groupCloudWidget.isGroupWidgetVisible(groupValueString.groupCloudWidgetRequiredField);
|
||||||
await expect(await formPage.isSaveButtonDisabled()).toBe(true);
|
await expect(await formPage.isSaveButtonDisabled()).toBe(true);
|
||||||
await expect(await formPage.isValidationIconRed()).toBe(true);
|
await expect(await formPage.isValidationIconRed()).toBe(true);
|
||||||
@@ -150,4 +185,5 @@ describe('People and Group of people Widgets', () => {
|
|||||||
await expect(await formPage.isSaveButtonDisabled()).toBe(false);
|
await expect(await formPage.isSaveButtonDisabled()).toBe(false);
|
||||||
await expect(await formPage.isValidationIconBlue()).toBe(true);
|
await expect(await formPage.isValidationIconBlue()).toBe(true);
|
||||||
});
|
});
|
||||||
|
|
||||||
});
|
});
|
||||||
|
@@ -15,12 +15,11 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { LoginSSOPage, ProcessCloudWidgetPage } from '@alfresco/adf-testing';
|
import { FormCloudComponentPage, LoginSSOPage, ProcessCloudWidgetPage } from '@alfresco/adf-testing';
|
||||||
import { browser } from 'protractor';
|
import { browser } from 'protractor';
|
||||||
|
|
||||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||||
import { FormCloudDemoPage } from '../../pages/adf/demo-shell/process-services-cloud/cloudFormDemoPage';
|
|
||||||
import { tabFieldValueVisibilityJson, tabVarValueVisibilityJson, tabVarFieldVisibilityJson,
|
import { tabFieldValueVisibilityJson, tabVarValueVisibilityJson, tabVarFieldVisibilityJson,
|
||||||
tabFieldFieldVisibilityJson, tabFieldVarVisibilityJson, tabVarVarVisibilityJson,
|
tabFieldFieldVisibilityJson, tabFieldVarVisibilityJson, tabVarVarVisibilityJson,
|
||||||
tabNextOperatorsVisibilityJson } from '../../resources/forms/tab-visibility-conditions';
|
tabNextOperatorsVisibilityJson } from '../../resources/forms/tab-visibility-conditions';
|
||||||
@@ -30,7 +29,7 @@ describe('Visibility conditions on tabs - cloud', () => {
|
|||||||
const loginSSOPage = new LoginSSOPage();
|
const loginSSOPage = new LoginSSOPage();
|
||||||
|
|
||||||
const navigationBarPage = new NavigationBarPage();
|
const navigationBarPage = new NavigationBarPage();
|
||||||
const formCloudDemoPage = new FormCloudDemoPage();
|
const formCloudDemoPage = new FormCloudComponentPage();
|
||||||
const widget = new ProcessCloudWidgetPage();
|
const widget = new ProcessCloudWidgetPage();
|
||||||
|
|
||||||
const widgets = {
|
const widgets = {
|
||||||
|
@@ -15,12 +15,11 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { LoginSSOPage, ProcessCloudWidgetPage } from '@alfresco/adf-testing';
|
import { FormCloudComponentPage, LoginSSOPage, ProcessCloudWidgetPage } from '@alfresco/adf-testing';
|
||||||
import { browser } from 'protractor';
|
import { browser } from 'protractor';
|
||||||
|
|
||||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||||
import { FormCloudDemoPage } from '../../pages/adf/demo-shell/process-services-cloud/cloudFormDemoPage';
|
|
||||||
import { checkboxVisibilityFormJson, multipleCheckboxVisibilityFormJson } from '../../resources/forms/checkbox-visibility-condition';
|
import { checkboxVisibilityFormJson, multipleCheckboxVisibilityFormJson } from '../../resources/forms/checkbox-visibility-condition';
|
||||||
import { multipleVisibilityFormJson } from '../../resources/forms/multiple-visibility-conditions';
|
import { multipleVisibilityFormJson } from '../../resources/forms/multiple-visibility-conditions';
|
||||||
import { displayValueTextJson } from '../../resources/forms/displayValue-visibilityConditions';
|
import { displayValueTextJson } from '../../resources/forms/displayValue-visibilityConditions';
|
||||||
@@ -30,7 +29,7 @@ describe('Visibility conditions - cloud', () => {
|
|||||||
const loginSSOPage = new LoginSSOPage();
|
const loginSSOPage = new LoginSSOPage();
|
||||||
|
|
||||||
const navigationBarPage = new NavigationBarPage();
|
const navigationBarPage = new NavigationBarPage();
|
||||||
const formCloudDemoPage = new FormCloudDemoPage();
|
const formCloudDemoPage = new FormCloudComponentPage();
|
||||||
const widget = new ProcessCloudWidgetPage();
|
const widget = new ProcessCloudWidgetPage();
|
||||||
|
|
||||||
let visibleCheckbox;
|
let visibleCheckbox;
|
||||||
|
@@ -16,7 +16,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
/* tslint:disable */
|
/* tslint:disable */
|
||||||
export const peopleJson = {
|
export const peopleSingleModeFormMock = {
|
||||||
"formRepresentation": {
|
"formRepresentation": {
|
||||||
"id": "form-d74a4136-af83-4333-ac37-a6a74ac7aa84",
|
"id": "form-d74a4136-af83-4333-ac37-a6a74ac7aa84",
|
||||||
"name": "singlepeople",
|
"name": "singlepeople",
|
||||||
@@ -60,7 +60,7 @@ export const peopleJson = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const peopleMultipleModeJson = {
|
export const peopleMultipleModeFormMock = {
|
||||||
"formRepresentation": {
|
"formRepresentation": {
|
||||||
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
"name": "people",
|
"name": "people",
|
||||||
@@ -111,7 +111,7 @@ export const peopleMultipleModeJson = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const peopleRequiredJson = {
|
export const peopleRequiredFormMock = {
|
||||||
"formRepresentation": {
|
"formRepresentation": {
|
||||||
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
"name": "people",
|
"name": "people",
|
||||||
@@ -162,7 +162,7 @@ export const peopleRequiredJson = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const groupSingleJson = {
|
export const groupSingleModeFormMock = {
|
||||||
"formRepresentation": {
|
"formRepresentation": {
|
||||||
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
"name": "people",
|
"name": "people",
|
||||||
@@ -213,7 +213,7 @@ export const groupSingleJson = {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const groupMultipleJson = {
|
export const groupMultipleModeFormMock = {
|
||||||
"formRepresentation": {
|
"formRepresentation": {
|
||||||
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
"name": "people",
|
"name": "people",
|
||||||
@@ -262,9 +262,9 @@ export const groupMultipleJson = {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
export const groupRequiredJson = {
|
export const groupRequiredFormMock = {
|
||||||
"formRepresentation": {
|
"formRepresentation": {
|
||||||
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
"name": "people",
|
"name": "people",
|
||||||
@@ -313,4 +313,106 @@ export const groupRequiredJson = {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
};
|
||||||
|
|
||||||
|
export const peopleReadOnlyFormMock = {
|
||||||
|
"formRepresentation": {
|
||||||
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
|
"name": "people",
|
||||||
|
"description": "",
|
||||||
|
"version": 0,
|
||||||
|
"standAlone": true,
|
||||||
|
"formDefinition": {
|
||||||
|
"tabs": [],
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"id": "44e485d4-c286-425a-b488-3fda1707d319",
|
||||||
|
"name": "Label",
|
||||||
|
"type": "container",
|
||||||
|
"tab": null,
|
||||||
|
"numberOfColumns": 2,
|
||||||
|
"fields": {
|
||||||
|
"1": [
|
||||||
|
{
|
||||||
|
"id": "PeopleReadOnly",
|
||||||
|
"name": "People",
|
||||||
|
"type": "people",
|
||||||
|
"readOnly": true,
|
||||||
|
"required": false,
|
||||||
|
"colspan": 1,
|
||||||
|
"optionType": "single",
|
||||||
|
"visibilityCondition": null,
|
||||||
|
"params": {
|
||||||
|
"existingColspan": 1,
|
||||||
|
"maxColspan": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"2": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outcomes": [],
|
||||||
|
"metadata": {},
|
||||||
|
"variables": [
|
||||||
|
{
|
||||||
|
"id": "d6060d6b-1cb0-45dc-a18b-4d7898a9a5ad",
|
||||||
|
"name": "people",
|
||||||
|
"type": "string",
|
||||||
|
"value": "user1"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
export const groupReadOnlyFormMock = {
|
||||||
|
"formRepresentation": {
|
||||||
|
"id": "form-0fec4293-a33a-4408-923c-ba2d0645459c",
|
||||||
|
"name": "people",
|
||||||
|
"description": "",
|
||||||
|
"version": 0,
|
||||||
|
"standAlone": true,
|
||||||
|
"formDefinition": {
|
||||||
|
"tabs": [],
|
||||||
|
"fields": [
|
||||||
|
{
|
||||||
|
"id": "abccf2c9-b526-45c7-abd4-b969bdf8ce15",
|
||||||
|
"name": "Label",
|
||||||
|
"type": "container",
|
||||||
|
"tab": null,
|
||||||
|
"numberOfColumns": 2,
|
||||||
|
"fields": {
|
||||||
|
"1": [
|
||||||
|
{
|
||||||
|
"id": "GroupReadOnly",
|
||||||
|
"name": "Group of people",
|
||||||
|
"type": "functional-group",
|
||||||
|
"readOnly": true,
|
||||||
|
"required": false,
|
||||||
|
"colspan": 1,
|
||||||
|
"optionType": "single",
|
||||||
|
"visibilityCondition": null,
|
||||||
|
"params": {
|
||||||
|
"existingColspan": 1,
|
||||||
|
"maxColspan": 2
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"2": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"outcomes": [],
|
||||||
|
"metadata": {},
|
||||||
|
"variables": [
|
||||||
|
{
|
||||||
|
"id": "d6060d6b-1cb0-45dc-a18b-4d7898a9a5ad",
|
||||||
|
"name": "people",
|
||||||
|
"type": "string",
|
||||||
|
"value": "user1"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
@@ -16,7 +16,8 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { element, by, browser, ElementFinder } from 'protractor';
|
import { element, by, browser, ElementFinder } from 'protractor';
|
||||||
import { BrowserVisibility, BrowserActions } from '@alfresco/adf-testing';
|
import { BrowserVisibility } from '../utils/browser-visibility';
|
||||||
|
import { BrowserActions } from '../utils/browser-actions';
|
||||||
|
|
||||||
export class ConfigEditorPage {
|
export class ConfigEditorPage {
|
||||||
|
|
@@ -29,3 +29,4 @@ export * from './notification-history.page';
|
|||||||
export * from './form/public-api';
|
export * from './form/public-api';
|
||||||
export * from './card-view/public-api';
|
export * from './card-view/public-api';
|
||||||
export * from './viewerPage';
|
export * from './viewerPage';
|
||||||
|
export * from './config-editor-page';
|
||||||
|
@@ -15,11 +15,12 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { ConfigEditorPage } from '../../configEditorPage';
|
|
||||||
import { BrowserActions, BrowserVisibility } from '@alfresco/adf-testing';
|
|
||||||
import { by, element, ElementFinder } from 'protractor';
|
import { by, element, ElementFinder } from 'protractor';
|
||||||
|
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
||||||
|
import { BrowserActions } from '../../core/utils/browser-actions';
|
||||||
|
import { ConfigEditorPage } from '../../core/pages/config-editor-page';
|
||||||
|
|
||||||
export class FormCloudDemoPage {
|
export class FormCloudComponentPage {
|
||||||
|
|
||||||
formCloudEditor: ElementFinder = element.all(by.css('.mat-tab-list .mat-tab-label')).get(1);
|
formCloudEditor: ElementFinder = element.all(by.css('.mat-tab-list .mat-tab-label')).get(1);
|
||||||
formCloudRender: ElementFinder = element.all(by.css('.mat-tab-list .mat-tab-label')).get(0);
|
formCloudRender: ElementFinder = element.all(by.css('.mat-tab-list .mat-tab-label')).get(0);
|
@@ -15,7 +15,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { browser, by, element, ElementFinder } from 'protractor';
|
import { by, element, ElementFinder } from 'protractor';
|
||||||
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
||||||
import { BrowserActions } from '../../core/utils/browser-actions';
|
import { BrowserActions } from '../../core/utils/browser-actions';
|
||||||
import { FormFields } from '../../core/pages/form/formFields';
|
import { FormFields } from '../../core/pages/form/formFields';
|
||||||
@@ -26,8 +26,6 @@ export class GroupCloudComponentPage {
|
|||||||
formFields: FormFields = new FormFields();
|
formFields: FormFields = new FormFields();
|
||||||
|
|
||||||
async searchGroups(name: string): Promise<void> {
|
async searchGroups(name: string): Promise<void> {
|
||||||
await BrowserVisibility.waitUntilElementIsVisible(this.groupCloudSearch);
|
|
||||||
await browser.sleep(1000);
|
|
||||||
await BrowserActions.clearSendKeys(this.groupCloudSearch, name);
|
await BrowserActions.clearSendKeys(this.groupCloudSearch, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -42,7 +40,7 @@ export class GroupCloudComponentPage {
|
|||||||
|
|
||||||
async selectGroupFromList(name: string): Promise<void> {
|
async selectGroupFromList(name: string): Promise<void> {
|
||||||
const groupRow = element.all(by.cssContainingText('mat-option span', name)).first();
|
const groupRow = element.all(by.cssContainingText('mat-option span', name)).first();
|
||||||
await browser.sleep(1000);
|
|
||||||
await BrowserActions.click(groupRow);
|
await BrowserActions.click(groupRow);
|
||||||
await BrowserVisibility.waitUntilElementIsNotVisible(groupRow);
|
await BrowserVisibility.waitUntilElementIsNotVisible(groupRow);
|
||||||
}
|
}
|
||||||
@@ -79,4 +77,24 @@ export class GroupCloudComponentPage {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async checkGroupWidgetIsReadOnly (): Promise <boolean> {
|
||||||
|
const readOnlyGroup = element(by.css('group-cloud-widget .adf-readonly'));
|
||||||
|
try {
|
||||||
|
await BrowserVisibility.waitUntilElementIsVisible(readOnlyGroup);
|
||||||
|
return true;
|
||||||
|
} catch {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async checkGroupActiveField(name): Promise <boolean> {
|
||||||
|
const activeGroupField = element(by.css('group-cloud-widget .adf-readonly'));
|
||||||
|
try {
|
||||||
|
await BrowserActions.clearSendKeys(activeGroupField, name);
|
||||||
|
return true;
|
||||||
|
} catch {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -15,7 +15,7 @@
|
|||||||
* limitations under the License.
|
* limitations under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { browser, by, element, ElementFinder, Locator, protractor } from 'protractor';
|
import { by, element, ElementFinder, Locator, protractor } from 'protractor';
|
||||||
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
||||||
import { BrowserActions } from '../../core/utils/browser-actions';
|
import { BrowserActions } from '../../core/utils/browser-actions';
|
||||||
import { FormFields } from '../../core/pages/form/formFields';
|
import { FormFields } from '../../core/pages/form/formFields';
|
||||||
@@ -44,9 +44,6 @@ export class PeopleCloudComponentPage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
async searchAssignee(name: string): Promise<void> {
|
async searchAssignee(name: string): Promise<void> {
|
||||||
await BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudSearch);
|
|
||||||
await BrowserVisibility.waitUntilElementIsClickable(this.peopleCloudSearch);
|
|
||||||
await browser.sleep(1000);
|
|
||||||
await BrowserActions.clearSendKeys(this.peopleCloudSearch, name);
|
await BrowserActions.clearSendKeys(this.peopleCloudSearch, name);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -56,7 +53,6 @@ export class PeopleCloudComponentPage {
|
|||||||
|
|
||||||
async selectAssigneeFromList(name: string): Promise<void> {
|
async selectAssigneeFromList(name: string): Promise<void> {
|
||||||
const assigneeRow = element(by.cssContainingText('mat-option span.adf-people-label-name', name));
|
const assigneeRow = element(by.cssContainingText('mat-option span.adf-people-label-name', name));
|
||||||
await browser.sleep(2000);
|
|
||||||
await BrowserActions.click(assigneeRow);
|
await BrowserActions.click(assigneeRow);
|
||||||
await BrowserVisibility.waitUntilElementIsNotVisible(assigneeRow);
|
await BrowserVisibility.waitUntilElementIsNotVisible(assigneeRow);
|
||||||
}
|
}
|
||||||
@@ -82,7 +78,6 @@ export class PeopleCloudComponentPage {
|
|||||||
|
|
||||||
async getAssigneeFieldContent(): Promise<string> {
|
async getAssigneeFieldContent(): Promise<string> {
|
||||||
await BrowserVisibility.waitUntilElementIsVisible(this.assigneeField);
|
await BrowserVisibility.waitUntilElementIsVisible(this.assigneeField);
|
||||||
await browser.sleep(1000);
|
|
||||||
return this.assigneeField.getAttribute('value');
|
return this.assigneeField.getAttribute('value');
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -118,4 +113,24 @@ export class PeopleCloudComponentPage {
|
|||||||
await BrowserActions.click(peopleInput);
|
await BrowserActions.click(peopleInput);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async checkPeopleWidgetIsReadOnly (): Promise <boolean> {
|
||||||
|
const readOnlyAttribute = element(by.css('people-cloud-widget .adf-readonly'));
|
||||||
|
try {
|
||||||
|
await BrowserVisibility.waitUntilElementIsVisible(readOnlyAttribute);
|
||||||
|
return true;
|
||||||
|
} catch {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async checkPeopleActiveField(name): Promise <boolean> {
|
||||||
|
const activePeopleField = element(by.css('people-cloud-widget .adf-readonly'));
|
||||||
|
try {
|
||||||
|
await BrowserActions.clearSendKeys(activePeopleField, name);
|
||||||
|
return true;
|
||||||
|
} catch {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -28,5 +28,6 @@ export * from './task-filters-cloud-component.page';
|
|||||||
export * from './task-list-cloud-component.page';
|
export * from './task-list-cloud-component.page';
|
||||||
export * from './start-process-cloud-component.page';
|
export * from './start-process-cloud-component.page';
|
||||||
export * from './task-form-cloud-component.page';
|
export * from './task-form-cloud-component.page';
|
||||||
|
export * from './form-cloud-component.page';
|
||||||
export * from './dialog/public-api';
|
export * from './dialog/public-api';
|
||||||
export * from './form/public-api';
|
export * from './form/public-api';
|
||||||
|
Reference in New Issue
Block a user