mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ADF-3962] sso download directive automated (#4452)
* sso download directive automated * temp changes * temp changes * moving of services under lib testing and ADF-3962 automated * removed the browser sleep * cspell and linting fixes. * codacy improvements * export public-api update * remove circular dep * remove circular dep * fixes * fix user info test * fix datatable * random commit * move other string * fix lint * fix lint * fix prolem type * fix failing test * fix tag test * fix problems after rebase * fix lint * remove space * remove visibility method duplicated
This commit is contained in:
committed by
Eugenio Romano
parent
89f612bbb0
commit
4376d357ac
@@ -124,7 +124,8 @@
|
||||
"hardend",
|
||||
"filedata",
|
||||
"uncheck",
|
||||
"subfolders"
|
||||
"subfolders",
|
||||
"ECMBPM"
|
||||
],
|
||||
"dictionaries": [
|
||||
"html",
|
||||
|
@@ -27,7 +27,7 @@ import { FileModel } from '../../models/ACS/fileModel';
|
||||
import TestConfig = require('../../test.config');
|
||||
import resources = require('../../util/resources');
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
@@ -183,7 +183,7 @@ describe('Comment Component', () => {
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(8),
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
|
@@ -24,7 +24,7 @@ import { AcsUserModel } from '../../models/ACS/acsUserModel';
|
||||
import TestConfig = require('../../test.config');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { browser, Key } from 'protractor';
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
describe('Create library directive', function () {
|
||||
|
||||
@@ -56,14 +56,14 @@ describe('Create library directive', function () {
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
createSite = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
'title': Util.generateRandomString(20).toLowerCase(),
|
||||
'title': StringUtil.generateRandomString(20).toLowerCase(),
|
||||
'visibility': 'PUBLIC'
|
||||
});
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
beforeEach( (done) => {
|
||||
beforeEach((done) => {
|
||||
contentServicesPage.goToDocumentList();
|
||||
contentServicesPage.openCreateLibraryDialog();
|
||||
done();
|
||||
@@ -98,8 +98,8 @@ describe('Create library directive', function () {
|
||||
});
|
||||
|
||||
it('[C290160] Should create a public library', () => {
|
||||
const libraryName = Util.generateRandomString();
|
||||
const libraryDescription = Util.generateRandomString();
|
||||
const libraryName = StringUtil.generateRandomString();
|
||||
const libraryDescription = StringUtil.generateRandomString();
|
||||
createLibraryDialog.typeLibraryName(libraryName);
|
||||
createLibraryDialog.typeLibraryDescription(libraryDescription);
|
||||
createLibraryDialog.selectPublic();
|
||||
@@ -119,8 +119,8 @@ describe('Create library directive', function () {
|
||||
});
|
||||
|
||||
it('[C290173] Should create a private library', () => {
|
||||
const libraryName = Util.generateRandomString();
|
||||
const libraryDescription = Util.generateRandomString();
|
||||
const libraryName = StringUtil.generateRandomString();
|
||||
const libraryDescription = StringUtil.generateRandomString();
|
||||
createLibraryDialog.typeLibraryName(libraryName);
|
||||
createLibraryDialog.typeLibraryDescription(libraryDescription);
|
||||
createLibraryDialog.selectPrivate();
|
||||
@@ -140,9 +140,9 @@ describe('Create library directive', function () {
|
||||
});
|
||||
|
||||
it('[C290174, C290175] Should create a moderated library with a given Library ID', () => {
|
||||
const libraryName = Util.generateRandomString();
|
||||
const libraryId = Util.generateRandomString();
|
||||
const libraryDescription = Util.generateRandomString();
|
||||
const libraryName = StringUtil.generateRandomString();
|
||||
const libraryId = StringUtil.generateRandomString();
|
||||
const libraryDescription = StringUtil.generateRandomString();
|
||||
createLibraryDialog.typeLibraryName(libraryName);
|
||||
createLibraryDialog.typeLibraryId(libraryId);
|
||||
createLibraryDialog.typeLibraryDescription(libraryDescription);
|
||||
@@ -163,7 +163,7 @@ describe('Create library directive', function () {
|
||||
});
|
||||
|
||||
it('[C290163] Should disable Create button when a mandatory field is not filled in', () => {
|
||||
const inputValue = Util.generateRandomString();
|
||||
const inputValue = StringUtil.generateRandomString();
|
||||
|
||||
createLibraryDialog.typeLibraryName(inputValue);
|
||||
createLibraryDialog.clearLibraryId();
|
||||
@@ -214,7 +214,7 @@ describe('Create library directive', function () {
|
||||
|
||||
it('[C291793] Should display error for Name field filled in with spaces only', () => {
|
||||
const name = ' ';
|
||||
const libraryId = Util.generateRandomString();
|
||||
const libraryId = StringUtil.generateRandomString();
|
||||
|
||||
createLibraryDialog.typeLibraryName(name);
|
||||
createLibraryDialog.typeLibraryId(libraryId);
|
||||
@@ -225,7 +225,7 @@ describe('Create library directive', function () {
|
||||
|
||||
it('[C290177] Should not accept a duplicate Library Id', () => {
|
||||
const name = 'My Library';
|
||||
const libraryId = Util.generateRandomString();
|
||||
const libraryId = StringUtil.generateRandomString();
|
||||
|
||||
createLibraryDialog.typeLibraryName(name);
|
||||
createLibraryDialog.typeLibraryId(libraryId);
|
||||
@@ -242,7 +242,7 @@ describe('Create library directive', function () {
|
||||
|
||||
it('[C290178] Should accept the same library name but different Library Ids', () => {
|
||||
const name = createSite.entry.title;
|
||||
const libraryId = Util.generateRandomString();
|
||||
const libraryId = StringUtil.generateRandomString();
|
||||
|
||||
createLibraryDialog.typeLibraryName(name.toUpperCase());
|
||||
createLibraryDialog.typeLibraryId(libraryId);
|
||||
@@ -257,9 +257,9 @@ describe('Create library directive', function () {
|
||||
});
|
||||
|
||||
it('[C290179] Should not accept more than the expected characters for input fields', () => {
|
||||
const name = Util.generateRandomString(257);
|
||||
const libraryId = Util.generateRandomString(73);
|
||||
const libraryDescription = Util.generateRandomString(513);
|
||||
const name = StringUtil.generateRandomString(257);
|
||||
const libraryId = StringUtil.generateRandomString(73);
|
||||
const libraryDescription = StringUtil.generateRandomString(513);
|
||||
|
||||
createLibraryDialog.typeLibraryName(name);
|
||||
createLibraryDialog.typeLibraryId(libraryId);
|
||||
|
@@ -24,7 +24,7 @@ import resources = require('../../util/resources');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { FileModel } from '../../models/ACS/fileModel';
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
describe('Document List Component - Actions', () => {
|
||||
|
||||
@@ -59,7 +59,7 @@ describe('Document List Component - Actions', () => {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
acsUser = new AcsUserModel();
|
||||
folderName = `TATSUMAKY_${Util.generateRandomString(5)}_SENPOUKYAKU`;
|
||||
folderName = `TATSUMAKY_${StringUtil.generateRandomString(5)}_SENPOUKYAKU`;
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
@@ -147,8 +147,8 @@ describe('Document List Component - Actions', () => {
|
||||
|
||||
beforeEach(async (done) => {
|
||||
acsUser = new AcsUserModel();
|
||||
folderName = `TATSUMAKY_${Util.generateRandomString(5)}_SENPOUKYAKU`;
|
||||
secondFolderName = `TATSUMAKY_${Util.generateRandomString(5)}_SENPOUKYAKU`;
|
||||
folderName = `TATSUMAKY_${StringUtil.generateRandomString(5)}_SENPOUKYAKU`;
|
||||
secondFolderName = `TATSUMAKY_${StringUtil.generateRandomString(5)}_SENPOUKYAKU`;
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
|
@@ -23,7 +23,7 @@ import { AcsUserModel } from '../../models/ACS/acsUserModel';
|
||||
import { ViewerPage } from '../../pages/adf/viewerPage';
|
||||
import TestConfig = require('../../test.config');
|
||||
import resources = require('../../util/resources');
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { ErrorPage } from '../../pages/adf/errorPage';
|
||||
@@ -74,8 +74,8 @@ describe('Document List Component', () => {
|
||||
|
||||
beforeAll(async (done) => {
|
||||
acsUser = new AcsUserModel();
|
||||
const siteName = `PRIVATE_TEST_SITE_${Util.generateRandomString(5)}`;
|
||||
const folderName = `MEESEEKS_${Util.generateRandomString(5)}`;
|
||||
const siteName = `PRIVATE_TEST_SITE_${StringUtil.generateRandomString(5)}`;
|
||||
const folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}`;
|
||||
const privateSiteBody = { visibility: 'PRIVATE', title: siteName };
|
||||
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
@@ -149,7 +149,7 @@ describe('Document List Component', () => {
|
||||
acsUser = new AcsUserModel();
|
||||
|
||||
/* cspell:disable-next-line */
|
||||
folderName = `MEESEEKS_${Util.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
|
||||
@@ -331,7 +331,7 @@ describe('Document List Component', () => {
|
||||
});
|
||||
acsUser = new AcsUserModel();
|
||||
/* cspell:disable-next-line */
|
||||
const folderName = `MEESEEKS_${Util.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
const folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
@@ -362,8 +362,8 @@ describe('Document List Component', () => {
|
||||
|
||||
it('[C279970] Should display Islocked field for folders', async (done) => {
|
||||
acsUser = new AcsUserModel();
|
||||
const folderNameA = `MEESEEKS_${Util.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
const folderNameB = `MEESEEKS_${Util.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
const folderNameA = `MEESEEKS_${StringUtil.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
const folderNameB = `MEESEEKS_${StringUtil.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
@@ -455,7 +455,7 @@ describe('Document List Component', () => {
|
||||
'name': resources.Files.ADF_DOCUMENTS.DOCX.file_name,
|
||||
'location': resources.Files.ADF_DOCUMENTS.DOCX.file_location
|
||||
});
|
||||
const folderName = `MEESEEKS_${Util.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
const folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
let filePdfNode, fileTestNode, fileDocxNode, folderNode;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
@@ -562,7 +562,7 @@ describe('Document List Component', () => {
|
||||
'name': resources.Files.ADF_DOCUMENTS.DOCX.file_name,
|
||||
'location': resources.Files.ADF_DOCUMENTS.DOCX.file_location
|
||||
});
|
||||
const folderName = `MEESEEKS_${Util.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
const folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}_LOOK_AT_ME`;
|
||||
let filePdfNode, fileTestNode, fileDocxNode, folderNode, filePDFSubNode;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
|
@@ -25,7 +25,7 @@ import { AcsUserModel } from '../models/ACS/acsUserModel';
|
||||
import { FileModel } from '../models/ACS/fileModel';
|
||||
|
||||
import CONSTANTS = require('../util/constants');
|
||||
import { Util } from '../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
import TestConfig = require('../test.config');
|
||||
import resources = require('../util/resources');
|
||||
@@ -70,7 +70,7 @@ describe('Lock File', () => {
|
||||
await this.alfrescoJsApi.login(adminUser.id, adminUser.password);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(),
|
||||
title: StringUtil.generateRandomString(),
|
||||
visibility: 'PRIVATE'
|
||||
});
|
||||
|
||||
|
@@ -16,117 +16,71 @@
|
||||
*/
|
||||
|
||||
import { PermissionsPage } from '../../pages/adf/permissionsPage';
|
||||
|
||||
import { LoginPage } from '../../pages/adf/loginPage';
|
||||
|
||||
import { ContentServicesPage } from '../../pages/adf/contentServicesPage';
|
||||
|
||||
import { AcsUserModel } from '../../models/ACS/acsUserModel';
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
|
||||
import resources = require('../../util/resources');
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
|
||||
import { FileModel } from '../../models/ACS/fileModel';
|
||||
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import { browser, protractor } from 'protractor';
|
||||
|
||||
import { FolderModel } from '../../models/ACS/folderModel';
|
||||
|
||||
import { SearchDialog } from '../../pages/adf/dialog/searchDialog';
|
||||
|
||||
import { ViewerPage } from '../../pages/adf/viewerPage';
|
||||
|
||||
import { NotificationPage } from '../../pages/adf/notificationPage';
|
||||
|
||||
import { MetadataViewPage } from '../../pages/adf/metadataViewPage';
|
||||
|
||||
import { UploadDialog } from '../../pages/adf/dialog/uploadDialog';
|
||||
|
||||
describe('Permissions Component', function () {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
|
||||
const permissionsPage = new PermissionsPage();
|
||||
|
||||
const uploadActions = new UploadActions();
|
||||
|
||||
const contentList = contentServicesPage.getDocumentList();
|
||||
|
||||
const searchDialog = new SearchDialog();
|
||||
|
||||
const viewerPage = new ViewerPage();
|
||||
|
||||
const metadataViewPage = new MetadataViewPage();
|
||||
|
||||
const notificationPage = new NotificationPage();
|
||||
|
||||
const uploadDialog = new UploadDialog();
|
||||
|
||||
let fileOwnerUser, filePermissionUser, file;
|
||||
|
||||
const fileModel = new FileModel({
|
||||
|
||||
'name': resources.Files.ADF_DOCUMENTS.TXT_0B.file_name,
|
||||
|
||||
'location': resources.Files.ADF_DOCUMENTS.TXT_0B.file_location
|
||||
|
||||
});
|
||||
|
||||
const testFileModel = new FileModel({
|
||||
|
||||
'name': resources.Files.ADF_DOCUMENTS.TEST.file_name,
|
||||
|
||||
'location': resources.Files.ADF_DOCUMENTS.TEST.file_location
|
||||
|
||||
});
|
||||
|
||||
const pngFileModel = new FileModel({
|
||||
|
||||
'name': resources.Files.ADF_DOCUMENTS.PNG.file_name,
|
||||
|
||||
'location': resources.Files.ADF_DOCUMENTS.PNG.file_location
|
||||
|
||||
});
|
||||
|
||||
const groupBody = {
|
||||
|
||||
id: Util.generateRandomString(),
|
||||
|
||||
displayName: Util.generateRandomString()
|
||||
|
||||
id: StringUtil.generateRandomString(),
|
||||
displayName: StringUtil.generateRandomString()
|
||||
};
|
||||
|
||||
const alfrescoJsApi = new AlfrescoApi({
|
||||
|
||||
provider: 'ECM',
|
||||
|
||||
hostEcm: TestConfig.adf.url
|
||||
|
||||
});
|
||||
|
||||
const roleConsumerFolderModel = new FolderModel({'name': 'roleConsumer' + Util.generateRandomString()});
|
||||
|
||||
const roleCoordinatorFolderModel = new FolderModel({'name': 'roleCoordinator' + Util.generateRandomString()});
|
||||
|
||||
const roleCollaboratorFolderModel = new FolderModel({'name': 'roleCollaborator' + Util.generateRandomString()});
|
||||
|
||||
const roleContributorFolderModel = new FolderModel({'name': 'roleContributor' + Util.generateRandomString()});
|
||||
|
||||
const roleEditorFolderModel = new FolderModel({'name': 'roleEditor' + Util.generateRandomString()});
|
||||
const roleConsumerFolderModel = new FolderModel({ 'name': 'roleConsumer' + StringUtil.generateRandomString() });
|
||||
const roleCoordinatorFolderModel = new FolderModel({ 'name': 'roleCoordinator' + StringUtil.generateRandomString() });
|
||||
const roleCollaboratorFolderModel = new FolderModel({ 'name': 'roleCollaborator' + StringUtil.generateRandomString() });
|
||||
const roleContributorFolderModel = new FolderModel({ 'name': 'roleContributor' + StringUtil.generateRandomString() });
|
||||
const roleEditorFolderModel = new FolderModel({ 'name': 'roleEditor' + StringUtil.generateRandomString() });
|
||||
|
||||
let roleConsumerFolder, roleCoordinatorFolder, roleContributorFolder, roleCollaboratorFolder, roleEditorFolder;
|
||||
|
||||
let folders;
|
||||
|
||||
fileOwnerUser = new AcsUserModel();
|
||||
|
||||
filePermissionUser = new AcsUserModel();
|
||||
|
@@ -33,7 +33,7 @@ import { FileModel } from '../../models/ACS/fileModel';
|
||||
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
import { browser, protractor } from 'protractor';
|
||||
|
||||
@@ -143,11 +143,11 @@ describe('Permissions Component', function () {
|
||||
|
||||
await alfrescoJsApi.login(folderOwnerUser.id, folderOwnerUser.password);
|
||||
|
||||
const publicSiteName = `PUBLIC_TEST_SITE_${Util.generateRandomString(5)}`;
|
||||
const publicSiteName = `PUBLIC_TEST_SITE_${StringUtil.generateRandomString(5)}`;
|
||||
|
||||
const privateSiteName = `PRIVATE_TEST_SITE_${Util.generateRandomString(5)}`;
|
||||
const privateSiteName = `PRIVATE_TEST_SITE_${StringUtil.generateRandomString(5)}`;
|
||||
|
||||
folderName = `MEESEEKS_${Util.generateRandomString(5)}`;
|
||||
folderName = `MEESEEKS_${StringUtil.generateRandomString(5)}`;
|
||||
|
||||
const publicSiteBody = {visibility: 'PUBLIC', title: publicSiteName};
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
import { LoginPage } from '../../pages/adf/loginPage';
|
||||
import { ContentServicesPage } from '../../pages/adf/contentServicesPage';
|
||||
@@ -38,7 +38,7 @@ describe('Unshare file', () => {
|
||||
const navBar = new NavigationBarPage();
|
||||
const errorPage = new ErrorPage();
|
||||
const shareDialog = new ShareDialog();
|
||||
const siteName = `PRIVATE-TEST-SITE-${Util.generateRandomString(5)}`;
|
||||
const siteName = `PRIVATE-TEST-SITE-${StringUtil.generateRandomString(5)}`;
|
||||
|
||||
const acsUser = new AcsUserModel();
|
||||
const uploadActions = new UploadActions();
|
||||
@@ -63,10 +63,10 @@ describe('Unshare file', () => {
|
||||
};
|
||||
|
||||
nodeBody = {
|
||||
name: Util.generateRandomString(5),
|
||||
name: StringUtil.generateRandomString(5),
|
||||
nodeType: 'cm:content',
|
||||
properties: {
|
||||
'cm:title': Util.generateRandomString(5)
|
||||
'cm:title': StringUtil.generateRandomString(5)
|
||||
}
|
||||
};
|
||||
|
||||
|
166
e2e/content-services/sso/sso-download-directive-component.e2e.ts
Normal file
166
e2e/content-services/sso/sso-download-directive-component.e2e.ts
Normal file
@@ -0,0 +1,166 @@
|
||||
/*!
|
||||
* @license
|
||||
* Copyright 2019 Alfresco Software, Ltd.
|
||||
*
|
||||
* 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 { SettingsPage } from '../../pages/adf/settingsPage';
|
||||
import { ContentServicesPage } from '../../pages/adf/contentServicesPage';
|
||||
import TestConfig = require('../../test.config');
|
||||
import { browser } from 'protractor';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
import { ApiService, LoginSSOPage } from '@alfresco/adf-testing';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { FileModel } from '../../models/ACS/fileModel';
|
||||
import { ViewerPage } from '../../pages/adf/viewerPage';
|
||||
import resources = require('../../util/resources');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import * as path from 'path';
|
||||
import { Util } from '../../util/util';
|
||||
import { IdentityService } from '@alfresco/adf-testing';
|
||||
import { StringUtil, UserModel } from '@alfresco/adf-testing';
|
||||
|
||||
describe('SSO in ADF using ACS and AIS, Download Directive, Viewer, DocumentList, implicitFlow true', () => {
|
||||
|
||||
const settingsPage = new SettingsPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const contentServicesPage = new ContentServicesPage();
|
||||
const contentListPage = contentServicesPage.getDocumentList();
|
||||
const loginSsoPage = new LoginSSOPage();
|
||||
const viewerPage = new ViewerPage();
|
||||
let silentLogin;
|
||||
let implicitFlow;
|
||||
const uploadActions = new UploadActions();
|
||||
const firstPdfFileModel = new FileModel({
|
||||
'name': resources.Files.ADF_DOCUMENTS.PDF_B.file_name,
|
||||
'location': resources.Files.ADF_DOCUMENTS.PDF_B.file_location
|
||||
});
|
||||
|
||||
const pngFileModel = new FileModel({
|
||||
'name': resources.Files.ADF_DOCUMENTS.PNG.file_name,
|
||||
'location': resources.Files.ADF_DOCUMENTS.PNG.file_location
|
||||
});
|
||||
|
||||
let pdfUploadedFile, pngUploadedFile, folder;
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: TestConfig.adf.url
|
||||
});
|
||||
const downloadedPngFile = path.join(__dirname, 'downloads', pngFileModel.name);
|
||||
const downloadedMultipleFiles = path.join(__dirname, 'downloads', 'archive.zip');
|
||||
const folderName = StringUtil.generateRandomString(5);
|
||||
const acsUser = new UserModel();
|
||||
let identityService: IdentityService;
|
||||
|
||||
describe('SSO in ADF using ACS and AIS, implicit flow set', () => {
|
||||
|
||||
beforeAll(async (done) => {
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
|
||||
const apiService = new ApiService('alfresco', TestConfig.adf.url, TestConfig.adf.hostSso, 'ECM');
|
||||
await apiService.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
|
||||
identityService = new IdentityService(apiService);
|
||||
|
||||
await identityService.createIdentityUserAndSyncECMBPM(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
|
||||
folder = await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-');
|
||||
|
||||
pdfUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, firstPdfFileModel.location, firstPdfFileModel.name, folder.entry.id);
|
||||
|
||||
pngUploadedFile = await uploadActions.uploadFile(this.alfrescoJsApi, pngFileModel.location, pngFileModel.name, folder.entry.id);
|
||||
|
||||
silentLogin = false;
|
||||
implicitFlow = true;
|
||||
settingsPage.setProviderEcmSso(TestConfig.adf.url, TestConfig.adf.hostSso, TestConfig.adf.hostIdentity, silentLogin, implicitFlow, 'alfresco');
|
||||
loginSsoPage.clickOnSSOButton();
|
||||
loginSsoPage.loginSSOIdentityService(acsUser.id, acsUser.password);
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
contentServicesPage.checkAcsContainer();
|
||||
contentListPage.doubleClickRow(folderName);
|
||||
contentListPage.waitForTableBody();
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
try {
|
||||
await this.alfrescoJsApi.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
await uploadActions.deleteFilesOrFolder(this.alfrescoJsApi, folder.entry.id);
|
||||
await identityService.deleteIdentityUser(acsUser.id);
|
||||
} catch (error) {
|
||||
}
|
||||
await this.alfrescoJsApi.logout();
|
||||
browser.executeScript('window.sessionStorage.clear();');
|
||||
browser.executeScript('window.localStorage.clear();');
|
||||
done();
|
||||
});
|
||||
|
||||
afterEach(async (done) => {
|
||||
browser.refresh();
|
||||
contentListPage.waitForTableBody();
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C291936] Should be able to download a file', async (done) => {
|
||||
contentListPage.selectRow(pngFileModel.name);
|
||||
contentServicesPage.clickDownloadButton();
|
||||
expect(Util.fileExists(downloadedPngFile, 30)).toBe(true);
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C291938] Should be able to open a document', async (done) => {
|
||||
contentServicesPage.doubleClickRow(firstPdfFileModel.name);
|
||||
viewerPage.checkFileIsLoaded();
|
||||
viewerPage.checkFileNameIsDisplayed(firstPdfFileModel.name);
|
||||
viewerPage.clickCloseButton();
|
||||
contentListPage.waitForTableBody();
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C291942] Should be able to open an image', async (done) => {
|
||||
viewerPage.viewFile(pngFileModel.name);
|
||||
viewerPage.checkImgViewerIsDisplayed();
|
||||
viewerPage.checkFileNameIsDisplayed(pngFileModel.name);
|
||||
viewerPage.clickCloseButton();
|
||||
contentListPage.waitForTableBody();
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C291941] Should be able to download multiple files', async (done) => {
|
||||
contentServicesPage.clickMultiSelectToggle();
|
||||
contentServicesPage.checkAcsContainer();
|
||||
contentListPage.dataTablePage().checkAllRows();
|
||||
contentListPage.dataTablePage().checkRowIsChecked('Display name', pngFileModel.name);
|
||||
contentListPage.dataTablePage().checkRowIsChecked('Display name', firstPdfFileModel.name);
|
||||
contentServicesPage.clickDownloadButton();
|
||||
expect(Util.fileExists(downloadedMultipleFiles, 30)).toBe(true);
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C291940] Should be able to view thumbnails when enabled', async (done) => {
|
||||
contentServicesPage.enableThumbnails();
|
||||
contentServicesPage.checkAcsContainer();
|
||||
contentListPage.waitForTableBody();
|
||||
const filePdfIconUrl = await contentServicesPage.getRowIconImageUrl(firstPdfFileModel.name);
|
||||
expect(filePdfIconUrl).toContain(`/versions/1/nodes/${pdfUploadedFile.entry.id}/renditions`);
|
||||
const filePngIconUrl = await contentServicesPage.getRowIconImageUrl(pngFileModel.name);
|
||||
expect(filePngIconUrl).toContain(`/versions/1/nodes/${pngUploadedFile.entry.id}/renditions`);
|
||||
done();
|
||||
});
|
||||
});
|
||||
});
|
@@ -28,7 +28,7 @@ import resources = require('../util/resources');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../actions/ACS/upload.actions';
|
||||
|
||||
import { Util } from '../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import { browser } from 'protractor';
|
||||
|
||||
describe('Tag component', () => {
|
||||
@@ -40,14 +40,14 @@ describe('Tag component', () => {
|
||||
const acsUser = new AcsUserModel();
|
||||
const uploadActions = new UploadActions();
|
||||
const pdfFileModel = new FileModel({ 'name': resources.Files.ADF_DOCUMENTS.PDF.file_name });
|
||||
const deleteFile = new FileModel({ 'name': Util.generateRandomString() });
|
||||
const sameTag = Util.generateRandomStringToLowerCase();
|
||||
const deleteFile = new FileModel({ 'name': StringUtil.generateRandomString() });
|
||||
const sameTag = StringUtil.generateRandomString().toLowerCase();
|
||||
|
||||
const tagList = [
|
||||
Util.generateRandomStringToLowerCase(),
|
||||
Util.generateRandomStringToLowerCase(),
|
||||
Util.generateRandomStringToLowerCase(),
|
||||
Util.generateRandomStringToLowerCase()];
|
||||
StringUtil.generateRandomString().toLowerCase(),
|
||||
StringUtil.generateRandomString().toLowerCase(),
|
||||
StringUtil.generateRandomString().toLowerCase(),
|
||||
StringUtil.generateRandomString().toLowerCase()];
|
||||
|
||||
const tags = [
|
||||
{ tag: 'test-tag-01' }, { tag: 'test-tag-02' }, { tag: 'test-tag-03' }, { tag: 'test-tag-04' }, { tag: 'test-tag-05' },
|
||||
@@ -57,9 +57,9 @@ describe('Tag component', () => {
|
||||
{ tag: 'test-tag-21' }, { tag: 'test-tag-22' }, { tag: 'test-tag-23' }, { tag: 'test-tag-24' }, { tag: 'test-tag-25' },
|
||||
{ tag: 'test-tag-26' }, { tag: 'test-tag-27' }, { tag: 'test-tag-28' }, { tag: 'test-tag-29' }, { tag: 'test-tag-30' }];
|
||||
|
||||
const uppercaseTag = Util.generateRandomStringToUpperCase();
|
||||
const digitsTag = Util.generateRandomStringDigits();
|
||||
const nonLatinTag = Util.generateRandomStringNonLatin();
|
||||
const uppercaseTag = StringUtil.generateRandomString().toUpperCase();
|
||||
const digitsTag = StringUtil.generateRandomStringDigits();
|
||||
const nonLatinTag = StringUtil.generateRandomStringNonLatin();
|
||||
let pdfUploadedFile, nodeId;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
@@ -160,7 +160,7 @@ describe('Tag component', () => {
|
||||
});
|
||||
|
||||
it('[C260375] Should be possible to delete a tag', () => {
|
||||
const deleteTag = Util.generateRandomStringToUpperCase();
|
||||
const deleteTag = StringUtil.generateRandomString().toUpperCase();
|
||||
|
||||
tagPage.insertNodeId(deleteFile.id);
|
||||
|
||||
|
@@ -28,7 +28,7 @@ import { FolderModel } from '../../models/ACS/folderModel';
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
import resources = require('../../util/resources');
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
@@ -365,7 +365,7 @@ describe('Upload component', () => {
|
||||
});
|
||||
|
||||
it('[C291921] Should display tooltip for uploading files on a not found location', async () => {
|
||||
const folderName = Util.generateRandomString(8);
|
||||
const folderName = StringUtil.generateRandomString(8);
|
||||
|
||||
const folderUploadedModel = await browser.controlFlow().execute(async () => {
|
||||
return await uploadActions.createFolder(this.alfrescoJsApi, folderName, '-my-');
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
import { browser } from 'protractor';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
import { LoginPage } from '../../pages/adf/loginPage';
|
||||
import { ContentServicesPage } from '../../pages/adf/contentServicesPage';
|
||||
@@ -88,12 +88,12 @@ describe('Upload - User permission', () => {
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
this.consumerSite = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(),
|
||||
title: StringUtil.generateRandomString(),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
this.managerSite = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(),
|
||||
title: StringUtil.generateRandomString(),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
|
@@ -32,6 +32,7 @@ import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { Util } from '../../util/util';
|
||||
import path = require('path');
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
describe('Version component actions', () => {
|
||||
|
||||
@@ -86,14 +87,14 @@ describe('Version component actions', () => {
|
||||
versionManagePage.clickActionButton('1.0');
|
||||
expect(element(by.css(`[id="adf-version-list-action-delete-1.0"]`)).isEnabled()).toBe(false);
|
||||
versionManagePage.closeActionButton();
|
||||
Util.waitUntilElementIsNotOnPage(element(by.css(`[id="adf-version-list-action-delete-1.0"]`)));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(element(by.css(`[id="adf-version-list-action-delete-1.0"]`)));
|
||||
});
|
||||
|
||||
it('[C280004] Should not be possible restore the version if there is only one version', () => {
|
||||
versionManagePage.clickActionButton('1.0');
|
||||
expect(element(by.css(`[id="adf-version-list-action-restore-1.0"]`)).isEnabled()).toBe(false);
|
||||
versionManagePage.closeActionButton();
|
||||
Util.waitUntilElementIsNotOnPage(element(by.css(`[id="adf-version-list-action-restore-1.0"]`)));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(element(by.css(`[id="adf-version-list-action-restore-1.0"]`)));
|
||||
});
|
||||
|
||||
it('[C280005] Should be showed all the default action when you have more then one version', () => {
|
||||
|
@@ -34,7 +34,7 @@ import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { NodeActions } from '../../actions/ACS/node.actions';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
|
||||
describe('Version component permissions', () => {
|
||||
@@ -89,7 +89,7 @@ describe('Version component permissions', () => {
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(fileCreatorUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(),
|
||||
title: StringUtil.generateRandomString(),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
|
@@ -29,8 +29,8 @@ import resources = require('../../util/resources');
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { Util } from '../../util/util';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
describe('Version Properties', () => {
|
||||
|
||||
@@ -86,7 +86,7 @@ describe('Version Properties', () => {
|
||||
|
||||
versionManagePage.clickActionButton('1.0');
|
||||
|
||||
Util.waitUntilElementIsNotVisible(element(by.css(`[id="adf-version-list-action-download-1.0"]`)));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(element(by.css(`[id="adf-version-list-action-download-1.0"]`)));
|
||||
|
||||
versionManagePage.closeActionButton();
|
||||
});
|
||||
@@ -96,7 +96,7 @@ describe('Version Properties', () => {
|
||||
|
||||
versionManagePage.clickActionButton('1.0');
|
||||
|
||||
Util.waitUntilElementIsVisible(element(by.css(`[id="adf-version-list-action-download-1.0"]`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`[id="adf-version-list-action-download-1.0"]`)));
|
||||
|
||||
versionManagePage.closeActionButton();
|
||||
});
|
||||
@@ -113,28 +113,28 @@ describe('Version Properties', () => {
|
||||
|
||||
versionManagePage.disableComments();
|
||||
|
||||
Util.waitUntilElementIsNotVisible(element(by.css(`[id="adf-version-list-item-comment-1.1"]`)));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(element(by.css(`[id="adf-version-list-item-comment-1.1"]`)));
|
||||
});
|
||||
|
||||
it('[C277277] Should show/hide actions menu when readOnly is true/false', () => {
|
||||
versionManagePage.disableReadOnly();
|
||||
|
||||
Util.waitUntilElementIsVisible(element(by.css(`[id="adf-version-list-action-menu-button-1.0"]`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`[id="adf-version-list-action-menu-button-1.0"]`)));
|
||||
|
||||
versionManagePage.enableReadOnly();
|
||||
|
||||
Util.waitUntilElementIsNotVisible(element(by.css(`[id="adf-version-list-action-menu-button-1.0"]`)));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(element(by.css(`[id="adf-version-list-action-menu-button-1.0"]`)));
|
||||
});
|
||||
|
||||
it('[C279994] Should show/hide upload new version button when readOnly is true/false', () => {
|
||||
versionManagePage.disableReadOnly();
|
||||
|
||||
Util.waitUntilElementIsVisible(versionManagePage.showNewVersionButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.showNewVersionButton);
|
||||
|
||||
versionManagePage.enableReadOnly();
|
||||
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.showNewVersionButton);
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.uploadNewVersionButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.showNewVersionButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.uploadNewVersionButton);
|
||||
});
|
||||
|
||||
});
|
||||
|
@@ -29,8 +29,8 @@ import resources = require('../../util/resources');
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { Util } from '../../util/util';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
describe('Version component', () => {
|
||||
|
||||
@@ -109,25 +109,25 @@ describe('Version component', () => {
|
||||
|
||||
browser.driver.sleep(300);
|
||||
|
||||
Util.waitUntilElementIsVisible(versionManagePage.cancelButton);
|
||||
Util.waitUntilElementIsVisible(versionManagePage.majorRadio);
|
||||
Util.waitUntilElementIsVisible(versionManagePage.minorRadio);
|
||||
Util.waitUntilElementIsVisible(versionManagePage.cancelButton);
|
||||
Util.waitUntilElementIsVisible(versionManagePage.commentText);
|
||||
Util.waitUntilElementIsVisible(versionManagePage.uploadNewVersionButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.majorRadio);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.minorRadio);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.commentText);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.uploadNewVersionButton);
|
||||
|
||||
versionManagePage.cancelButton.click();
|
||||
|
||||
browser.driver.sleep(300);
|
||||
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.cancelButton);
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.majorRadio);
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.minorRadio);
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.cancelButton);
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.commentText);
|
||||
Util.waitUntilElementIsNotVisible(versionManagePage.uploadNewVersionButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.majorRadio);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.minorRadio);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.commentText);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(versionManagePage.uploadNewVersionButton);
|
||||
|
||||
Util.waitUntilElementIsVisible(versionManagePage.showNewVersionButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(versionManagePage.showNewVersionButton);
|
||||
});
|
||||
|
||||
it('[C260244] Should show the version history when select a file with multiple version', () => {
|
||||
|
@@ -23,7 +23,7 @@ import { MetadataViewPage } from '../../pages/adf/metadataViewPage';
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
import { CardViewComponentPage } from '../../pages/adf/cardViewComponentPage';
|
||||
import { Util } from '../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
describe('CardView Component', () => {
|
||||
const loginPage = new LoginPage();
|
||||
@@ -47,7 +47,7 @@ describe('CardView Component', () => {
|
||||
it('[C279938] Should the label be present', () => {
|
||||
const label = element(by.css('div[data-automation-id="card-key-value-pairs-label-key-value-pairs"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
BrowserVisibility.waitUntilElementIsPresent(label);
|
||||
});
|
||||
|
||||
it('[C279898] Should be possible edit key-value pair properties', () => {
|
||||
@@ -69,7 +69,7 @@ describe('CardView Component', () => {
|
||||
it('[C279939] Should the label be present', () => {
|
||||
const label = element(by.css('div[data-automation-id="card-select-label-select"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
BrowserVisibility.waitUntilElementIsPresent(label);
|
||||
});
|
||||
|
||||
it('[C279899] Should be possible edit selectBox item', () => {
|
||||
@@ -86,7 +86,7 @@ describe('CardView Component', () => {
|
||||
it('[C279937] Should the label be present', () => {
|
||||
const label = element(by.css('div[data-automation-id="card-textitem-label-name"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
BrowserVisibility.waitUntilElementIsPresent(label);
|
||||
});
|
||||
|
||||
it('[C279943] Should be present a default value', () => {
|
||||
@@ -117,7 +117,7 @@ describe('CardView Component', () => {
|
||||
it('[C279940] Should the label be present', () => {
|
||||
const label = element(by.css('div[data-automation-id="card-textitem-label-int"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
BrowserVisibility.waitUntilElementIsPresent(label);
|
||||
});
|
||||
|
||||
it('[C279945] Should be present a default value', () => {
|
||||
@@ -191,7 +191,7 @@ describe('CardView Component', () => {
|
||||
it('[C279941] Should the label be present', () => {
|
||||
const label = element(by.css('div[data-automation-id="card-textitem-label-float"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
BrowserVisibility.waitUntilElementIsPresent(label);
|
||||
});
|
||||
|
||||
it('[C279952] Should be present a default value', () => {
|
||||
@@ -241,7 +241,7 @@ describe('CardView Component', () => {
|
||||
it('[C279942] Should the label be present', () => {
|
||||
const label = element(by.css('div[data-automation-id="card-boolean-label-boolean"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(label);
|
||||
BrowserVisibility.waitUntilElementIsPresent(label);
|
||||
});
|
||||
|
||||
it('[C279957] Should be possible edit the checkbox value when click on it', () => {
|
||||
@@ -260,11 +260,11 @@ describe('CardView Component', () => {
|
||||
it('[C279961] Should the label be present', () => {
|
||||
const labelDate = element(by.css('div[data-automation-id="card-dateitem-label-date"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(labelDate);
|
||||
BrowserVisibility.waitUntilElementIsPresent(labelDate);
|
||||
|
||||
const labelDatetime = element(by.css('div[data-automation-id="card-dateitem-label-datetime"]'));
|
||||
|
||||
Util.waitUntilElementIsPresent(labelDatetime);
|
||||
BrowserVisibility.waitUntilElementIsPresent(labelDatetime);
|
||||
});
|
||||
|
||||
it('[C279962] Should be present a default value', () => {
|
||||
@@ -283,10 +283,10 @@ describe('CardView Component', () => {
|
||||
const editIconKey = element(by.css('mat-icon[data-automation-id="card-key-value-pairs-button-key-value-pairs"]'));
|
||||
const editIconData = element(by.css('mat-datetimepicker-toggle'));
|
||||
|
||||
Util.waitUntilElementIsNotVisible(editIconText);
|
||||
Util.waitUntilElementIsNotVisible(editIconInt);
|
||||
Util.waitUntilElementIsNotVisible(editIconFloat);
|
||||
Util.waitUntilElementIsNotVisible(editIconKey);
|
||||
Util.waitUntilElementIsNotVisible(editIconData);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(editIconText);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(editIconInt);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(editIconFloat);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(editIconKey);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(editIconData);
|
||||
});
|
||||
});
|
||||
|
@@ -29,7 +29,7 @@ import resources = require('../../util/resources');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
|
||||
describe('permissions', () => {
|
||||
@@ -78,7 +78,7 @@ describe('permissions', () => {
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(contributorUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(),
|
||||
title: StringUtil.generateRandomString(),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
|
@@ -20,7 +20,7 @@ import { AcsUserModel } from '../models/ACS/acsUserModel';
|
||||
import TestConfig = require('../test.config');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { ErrorPage } from '../pages/adf/errorPage';
|
||||
import { browser } from '../../node_modules/protractor';
|
||||
import { browser } from 'protractor';
|
||||
|
||||
describe('Error Component', () => {
|
||||
|
||||
|
@@ -259,7 +259,7 @@ describe('Login component', () => {
|
||||
settingsPage.setProviderEcmBpm();
|
||||
loginPage.enableLogoSwitch();
|
||||
loginPage.enterLogo('https://rawgit.com/Alfresco/alfresco-ng2-components/master/assets/angular2.png');
|
||||
loginPage.checkLoginImgURL('https://rawgit.com/Alfresco/alfresco-ng2-components/master/assets/angular2.png');
|
||||
loginPage.checkLoginImgURL();
|
||||
});
|
||||
|
||||
it('[C291854] Should be possible login in valid credentials', () => {
|
||||
|
@@ -29,7 +29,7 @@ import { SettingsPage } from '../../pages/adf/settingsPage';
|
||||
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
import { UploadActions } from '../../actions/ACS/upload.actions';
|
||||
import { LogoutPage } from '../../pages/adf/demo-shell/logoutPage';
|
||||
|
||||
@@ -64,7 +64,7 @@ describe('Login component - Redirect', () => {
|
||||
|
||||
await this.alfrescoJsApi.login(user.id, user.password);
|
||||
|
||||
uploadedFolder = await uploadActions.createFolder(this.alfrescoJsApi, 'protecteFolder' + Util.generateRandomString(), '-my-');
|
||||
uploadedFolder = await uploadActions.createFolder(this.alfrescoJsApi, 'protecteFolder' + StringUtil.generateRandomString(), '-my-');
|
||||
|
||||
done();
|
||||
});
|
||||
|
@@ -18,10 +18,9 @@
|
||||
import { LoginSSOPage } from '@alfresco/adf-testing';
|
||||
import { SettingsPage } from '../pages/adf/settingsPage';
|
||||
import TestConfig = require('../test.config');
|
||||
import { browser } from 'protractor';
|
||||
import { NavigationBarPage } from '../pages/adf/navigationBarPage';
|
||||
import { UserInfoPage } from '@alfresco/adf-testing';
|
||||
import { Identity } from '../actions/APS-cloud/identity';
|
||||
import { IdentityService, ApiService } from '@alfresco/adf-testing';
|
||||
|
||||
describe('User Info - SSO', () => {
|
||||
|
||||
@@ -29,21 +28,25 @@ describe('User Info - SSO', () => {
|
||||
const loginSSOPage = new LoginSSOPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const userInfoPage = new UserInfoPage();
|
||||
const identityService: Identity = new Identity();
|
||||
let silentLogin, identityUser;
|
||||
let identityService: IdentityService;
|
||||
|
||||
beforeAll(async () => {
|
||||
await identityService.init(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword, 'alfresco');
|
||||
const apiService = new ApiService('alfresco', TestConfig.adf.url, TestConfig.adf.hostSso, 'ECM');
|
||||
await apiService.login(TestConfig.adf.adminEmail, TestConfig.adf.adminPassword);
|
||||
|
||||
identityService = new IdentityService(apiService);
|
||||
identityUser = await identityService.createIdentityUser();
|
||||
|
||||
silentLogin = false;
|
||||
settingsPage.setProviderEcmSso(TestConfig.adf.url, TestConfig.adf.hostSso, TestConfig.adf.hostIdentity, silentLogin, true, 'alfresco');
|
||||
loginSSOPage.clickOnSSOButton();
|
||||
browser.ignoreSynchronization = true;
|
||||
loginSSOPage.loginSSOIdentityService(identityUser.username, identityUser.password);
|
||||
|
||||
loginSSOPage.loginSSOIdentityService(identityUser.email, identityUser.password);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await identityService.deleteIdentityUser(identityUser.id);
|
||||
await identityService.deleteIdentityUser(identityUser.idIdentityService);
|
||||
});
|
||||
|
||||
it('[C290066] Should display UserInfo when login using SSO', () => {
|
||||
|
@@ -81,7 +81,7 @@ describe('User Info component', () => {
|
||||
expect(userInfoPage.getContentHeaderTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getContentTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getContentEmail()).toEqual(contentUserModel.email);
|
||||
expect(userInfoPage.getContentJobTitle()).toEqual(contentUserModel.jobTitle);
|
||||
expect(userInfoPage.getContentJobTitle()).toEqual('N/A');
|
||||
|
||||
userInfoPage.checkInitialImage();
|
||||
userInfoPage.APSProfileImageNotDisplayed();
|
||||
@@ -91,7 +91,7 @@ describe('User Info component', () => {
|
||||
expect(userInfoPage.getContentHeaderTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getContentTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getContentEmail()).toEqual(contentUserModel.email);
|
||||
expect(userInfoPage.getContentJobTitle()).toEqual(contentUserModel.jobTitle);
|
||||
expect(userInfoPage.getContentJobTitle()).toEqual('N/A');
|
||||
|
||||
userInfoPage.checkInitialImage();
|
||||
userInfoPage.APSProfileImageNotDisplayed();
|
||||
@@ -99,9 +99,9 @@ describe('User Info component', () => {
|
||||
userInfoPage.clickOnProcessServicesTab();
|
||||
userInfoPage.checkProcessServicesTabIsSelected();
|
||||
|
||||
expect(userInfoPage.getProcessHeaderTitle()).toEqual(processUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
expect(userInfoPage.getProcessTitle()).toEqual(processUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
expect(userInfoPage.getProcessEmail()).toEqual(processUserModel.email);
|
||||
expect(userInfoPage.getProcessHeaderTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getProcessTitle()).toEqual(contentUserModel.firstName + ' ' + processUserModel.lastName);
|
||||
expect(userInfoPage.getProcessEmail()).toEqual(contentUserModel.email);
|
||||
|
||||
userInfoPage.checkInitialImage();
|
||||
userInfoPage.APSProfileImageNotDisplayed();
|
||||
@@ -120,7 +120,7 @@ describe('User Info component', () => {
|
||||
expect(userInfoPage.getContentHeaderTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getContentTitle()).toEqual(contentUserModel.firstName + ' ' + contentUserModel.lastName);
|
||||
expect(userInfoPage.getContentEmail()).toEqual(contentUserModel.email);
|
||||
expect(userInfoPage.getContentJobTitle()).toEqual(contentUserModel.jobTitle);
|
||||
expect(userInfoPage.getContentJobTitle()).toEqual('N/A');
|
||||
|
||||
userInfoPage.checkInitialImage();
|
||||
userInfoPage.APSProfileImageNotDisplayed();
|
||||
@@ -150,7 +150,7 @@ describe('User Info component', () => {
|
||||
it('[C260117] Should display UserInfo with profile image uploaded in ACS', async(done) => {
|
||||
browser.controlFlow().execute(async() => {
|
||||
await PeopleAPI.updateAvatarViaAPI(contentUserModel, acsAvatarFileModel, '-me-');
|
||||
await PeopleAPI.getAvatarViaAPI(4, contentUserModel, '-me-', function (result) {});
|
||||
await PeopleAPI.getAvatarViaAPI(4, contentUserModel, '-me-', function () {});
|
||||
});
|
||||
|
||||
loginPage.goToLoginPage();
|
||||
|
@@ -26,7 +26,7 @@ import { AboutPage } from '../../pages/adf/demo-shell/aboutPage';
|
||||
|
||||
import CONSTANTS = require('../../util/constants');
|
||||
import resources = require('../../util/resources');
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
import { FileModel } from '../../models/ACS/fileModel';
|
||||
import { FolderModel } from '../../models/ACS/folderModel';
|
||||
@@ -106,7 +106,7 @@ xdescribe('Viewer', () => {
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
|
||||
site = await this.alfrescoJsApi.core.sitesApi.createSite({
|
||||
title: Util.generateRandomString(8),
|
||||
title: StringUtil.generateRandomString(8),
|
||||
visibility: 'PUBLIC'
|
||||
});
|
||||
|
||||
|
@@ -15,16 +15,15 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
export class AcsUserModel {
|
||||
|
||||
firstName = Util.generateRandomString();
|
||||
lastName = Util.generateRandomString();
|
||||
password = Util.generateRandomString();
|
||||
email = Util.generateRandomString();
|
||||
id = Util.generateRandomString();
|
||||
jobTitle = 'N/A';
|
||||
firstName = StringUtil.generateRandomString();
|
||||
lastName = StringUtil.generateRandomString();
|
||||
password = StringUtil.generateRandomString();
|
||||
email = StringUtil.generateRandomString();
|
||||
id = StringUtil.generateRandomString();
|
||||
|
||||
constructor(details?: any) {
|
||||
Object.assign(this, details);
|
||||
|
@@ -15,11 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
export class CreatedByModel {
|
||||
displayName = Util.generateRandomString();
|
||||
id = Util.generateRandomString();
|
||||
displayName = StringUtil.generateRandomString();
|
||||
id = StringUtil.generateRandomString();
|
||||
|
||||
constructor(details?: any) {
|
||||
Object.assign(this, details);
|
||||
|
@@ -19,12 +19,12 @@ import resources = require('../../util/resources');
|
||||
import ContentModel = require('./contentModel');
|
||||
import ContentPropertiesModel = require('./contentProperties');
|
||||
import { CreatedByModel } from './createdByModel';
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
export class FileModel {
|
||||
|
||||
id = Util.generateRandomString();
|
||||
name = Util.generateRandomString();
|
||||
id = StringUtil.generateRandomString();
|
||||
name = StringUtil.generateRandomString();
|
||||
shortName = this.name;
|
||||
location = resources.Files.ADF_DOCUMENTS.PDF.file_location;
|
||||
tooltip = this.name;
|
||||
|
@@ -15,12 +15,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
export class FolderModel {
|
||||
|
||||
id = Util.generateRandomString();
|
||||
name = Util.generateRandomString();
|
||||
id = StringUtil.generateRandomString();
|
||||
name = StringUtil.generateRandomString();
|
||||
shortName = this.name;
|
||||
tooltip = this.name;
|
||||
location = '';
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
/**
|
||||
* Create Json Object for standalone task
|
||||
@@ -25,7 +25,7 @@ import { Util } from '../../util/util';
|
||||
*/
|
||||
export class StandaloneTask {
|
||||
|
||||
name = Util.generateRandomString();
|
||||
name = StringUtil.generateRandomString();
|
||||
|
||||
constructor(details?: any) {
|
||||
Object.assign(this, details);
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
/**
|
||||
* Create tenant JSON Object
|
||||
@@ -29,7 +29,7 @@ export class Tenant {
|
||||
configuration = 'DefaultConfig';
|
||||
domain = 'DefaultDomain';
|
||||
maxUsers = 10;
|
||||
name = Util.generateRandomString();
|
||||
name = StringUtil.generateRandomString();
|
||||
|
||||
constructor(details?: any) {
|
||||
Object.assign(this, details);
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { StringUtil } from '@alfresco/adf-testing';
|
||||
|
||||
/**
|
||||
* Create tenant JSON Object
|
||||
@@ -25,10 +25,10 @@ import { Util } from '../../util/util';
|
||||
*/
|
||||
export class User {
|
||||
|
||||
email = Util.generateRandomEmail();
|
||||
firstName = Util.generateRandomString();
|
||||
lastName = Util.generateRandomString();
|
||||
password = Util.generatePasswordString();
|
||||
email = StringUtil.generateRandomEmail('@activiti.test.com');
|
||||
firstName = StringUtil.generateRandomString();
|
||||
lastName = StringUtil.generateRandomString();
|
||||
password = StringUtil.generatePasswordString();
|
||||
type = 'enterprise';
|
||||
tenantId = '1';
|
||||
company = null;
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { by, element } from 'protractor';
|
||||
import { Util } from '../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class CardViewComponentPage {
|
||||
|
||||
@@ -38,45 +38,45 @@ export class CardViewComponentPage {
|
||||
editableSwitch = element(by.id('adf-toggle-editable'));
|
||||
|
||||
clickOnAddButton() {
|
||||
Util.waitUntilElementIsVisible(this.addButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addButton);
|
||||
this.addButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnResetButton() {
|
||||
Util.waitUntilElementIsVisible(this.resetButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.resetButton);
|
||||
this.resetButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnTextField() {
|
||||
const toggleText = element(by.css(`div[data-automation-id='card-textitem-edit-toggle-name']`));
|
||||
Util.waitUntilElementIsVisible(toggleText);
|
||||
BrowserVisibility.waitUntilElementIsVisible(toggleText);
|
||||
toggleText.click();
|
||||
Util.waitUntilElementIsVisible(this.textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.textField);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnTextClearIcon() {
|
||||
const clearIcon = element(by.css(`mat-icon[data-automation-id="card-textitem-reset-name"]`));
|
||||
Util.waitUntilElementIsVisible(clearIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(clearIcon);
|
||||
return clearIcon.click();
|
||||
}
|
||||
|
||||
clickOnTextSaveIcon() {
|
||||
const saveIcon = element(by.css(`mat-icon[data-automation-id="card-textitem-update-name"]`));
|
||||
Util.waitUntilElementIsVisible(saveIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(saveIcon);
|
||||
return saveIcon.click();
|
||||
}
|
||||
|
||||
getTextFieldText() {
|
||||
const textField = element(by.css(`span[data-automation-id="card-textitem-value-name"]`));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
return textField.getText();
|
||||
}
|
||||
|
||||
enterTextField(text) {
|
||||
Util.waitUntilElementIsVisible(this.textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.textField);
|
||||
this.textField.sendKeys('');
|
||||
this.textField.clear();
|
||||
this.textField.sendKeys(text);
|
||||
@@ -85,26 +85,26 @@ export class CardViewComponentPage {
|
||||
|
||||
clickOnIntField() {
|
||||
const toggleText = element(by.css('div[data-automation-id="card-textitem-edit-toggle-int"]'));
|
||||
Util.waitUntilElementIsVisible(toggleText);
|
||||
BrowserVisibility.waitUntilElementIsVisible(toggleText);
|
||||
toggleText.click();
|
||||
Util.waitUntilElementIsVisible(this.intField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.intField);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnIntClearIcon() {
|
||||
const clearIcon = element(by.css('mat-icon[data-automation-id="card-textitem-reset-int"]'));
|
||||
Util.waitUntilElementIsVisible(clearIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(clearIcon);
|
||||
return clearIcon.click();
|
||||
}
|
||||
|
||||
clickOnIntSaveIcon() {
|
||||
const saveIcon = element(by.css('mat-icon[data-automation-id="card-textitem-update-int"]'));
|
||||
Util.waitUntilElementIsVisible(saveIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(saveIcon);
|
||||
return saveIcon.click();
|
||||
}
|
||||
|
||||
enterIntField(text) {
|
||||
Util.waitUntilElementIsVisible(this.intField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.intField);
|
||||
this.intField.sendKeys('');
|
||||
this.intField.clear();
|
||||
this.intField.sendKeys(text);
|
||||
@@ -113,38 +113,38 @@ export class CardViewComponentPage {
|
||||
|
||||
getIntFieldText() {
|
||||
const textField = element(by.css('span[data-automation-id="card-textitem-value-int"]'));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
return textField.getText();
|
||||
}
|
||||
|
||||
getErrorInt() {
|
||||
const errorElement = element(by.css('mat-error[data-automation-id="card-textitem-error-int"]'));
|
||||
Util.waitUntilElementIsVisible(errorElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(errorElement);
|
||||
return errorElement.getText();
|
||||
}
|
||||
|
||||
clickOnFloatField() {
|
||||
const toggleText = element(by.css('div[data-automation-id="card-textitem-edit-toggle-float"]'));
|
||||
Util.waitUntilElementIsVisible(toggleText);
|
||||
BrowserVisibility.waitUntilElementIsVisible(toggleText);
|
||||
toggleText.click();
|
||||
Util.waitUntilElementIsVisible(this.floatField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.floatField);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnFloatClearIcon() {
|
||||
const clearIcon = element(by.css(`mat-icon[data-automation-id="card-textitem-reset-float"]`));
|
||||
Util.waitUntilElementIsVisible(clearIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(clearIcon);
|
||||
return clearIcon.click();
|
||||
}
|
||||
|
||||
clickOnFloatSaveIcon() {
|
||||
const saveIcon = element(by.css(`mat-icon[data-automation-id="card-textitem-update-float"]`));
|
||||
Util.waitUntilElementIsVisible(saveIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(saveIcon);
|
||||
return saveIcon.click();
|
||||
}
|
||||
|
||||
enterFloatField(text) {
|
||||
Util.waitUntilElementIsVisible(this.floatField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.floatField);
|
||||
this.floatField.sendKeys('');
|
||||
this.floatField.clear();
|
||||
this.floatField.sendKeys(text);
|
||||
@@ -153,30 +153,30 @@ export class CardViewComponentPage {
|
||||
|
||||
getFloatFieldText() {
|
||||
const textField = element(by.css('span[data-automation-id="card-textitem-value-float"]'));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
return textField.getText();
|
||||
}
|
||||
|
||||
getErrorFloat() {
|
||||
const errorElement = element(by.css('mat-error[data-automation-id="card-textitem-error-float"]'));
|
||||
Util.waitUntilElementIsVisible(errorElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(errorElement);
|
||||
return errorElement.getText();
|
||||
}
|
||||
|
||||
setName(name) {
|
||||
Util.waitUntilElementIsVisible(this.nameInputField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nameInputField);
|
||||
this.nameInputField.sendKeys(name);
|
||||
return this;
|
||||
}
|
||||
|
||||
setValue(value) {
|
||||
Util.waitUntilElementIsVisible(this.valueInputField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.valueInputField);
|
||||
this.valueInputField.sendKeys(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
waitForOutput() {
|
||||
Util.waitUntilElementIsVisible(this.consoleLog);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.consoleLog);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -185,13 +185,13 @@ export class CardViewComponentPage {
|
||||
}
|
||||
|
||||
deletePairsValues() {
|
||||
Util.waitUntilElementIsVisible(this.deleteButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteButton);
|
||||
this.deleteButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkNameAndValueVisibility(index) {
|
||||
Util.waitUntilElementIsNotOnPage(this.getKeyValueRow(index));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.getKeyValueRow(index));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -206,7 +206,7 @@ export class CardViewComponentPage {
|
||||
|
||||
clickSelectBox() {
|
||||
this.select.click();
|
||||
Util.waitUntilElementIsVisible(this.listContent);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.listContent);
|
||||
}
|
||||
|
||||
checkboxClick() {
|
||||
@@ -215,7 +215,7 @@ export class CardViewComponentPage {
|
||||
|
||||
selectValueFromComboBox(index) {
|
||||
const value = this.getMatSelectValue(index).click();
|
||||
Util.waitUntilElementIsVisible(value);
|
||||
BrowserVisibility.waitUntilElementIsVisible(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -224,7 +224,7 @@ export class CardViewComponentPage {
|
||||
}
|
||||
|
||||
disableEdit() {
|
||||
Util.waitUntilElementIsVisible(this.editableSwitch);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.editableSwitch);
|
||||
|
||||
this.editableSwitch.getAttribute('class').then((check) => {
|
||||
if (check.indexOf('mat-checked') > -1) {
|
||||
|
@@ -17,8 +17,8 @@
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { TabsPage } from '@alfresco/adf-testing';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class CommentsPage {
|
||||
|
||||
@@ -32,36 +32,36 @@ export class CommentsPage {
|
||||
addCommentButton = element(by.css("[data-automation-id='comments-input-add']"));
|
||||
|
||||
getTotalNumberOfComments() {
|
||||
Util.waitUntilElementIsVisible(this.numberOfComments);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.numberOfComments);
|
||||
return this.numberOfComments.getText();
|
||||
}
|
||||
|
||||
checkUserIconIsDisplayed(position) {
|
||||
Util.waitUntilElementIsVisible(this.commentUserIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentUserIcon);
|
||||
return this.commentUserIcon.get(position);
|
||||
}
|
||||
|
||||
getUserName(position) {
|
||||
Util.waitUntilElementIsVisible(this.commentUserName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentUserName);
|
||||
return this.commentUserName.get(position).getText();
|
||||
}
|
||||
|
||||
getMessage(position) {
|
||||
Util.waitUntilElementIsVisible(this.commentMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentMessage);
|
||||
return this.commentMessage.get(position).getText();
|
||||
}
|
||||
|
||||
getTime(position) {
|
||||
Util.waitUntilElementIsVisible(this.commentTime);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentTime);
|
||||
return this.commentTime.get(position).getText();
|
||||
}
|
||||
|
||||
checkCommentInputIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.commentInput);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.commentInput);
|
||||
}
|
||||
|
||||
addComment(comment) {
|
||||
Util.waitUntilElementIsVisible(this.commentInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentInput);
|
||||
this.commentInput.sendKeys(comment);
|
||||
return this.addCommentButton.click();
|
||||
}
|
||||
@@ -71,6 +71,6 @@ export class CommentsPage {
|
||||
}
|
||||
|
||||
checkCommentInputIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.commentInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentInput);
|
||||
}
|
||||
}
|
||||
|
@@ -16,20 +16,20 @@
|
||||
*/
|
||||
|
||||
import { element, by, browser } from 'protractor';
|
||||
import { Util } from '../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ConfigEditorPage {
|
||||
|
||||
enterConfiguration(text) {
|
||||
const textField = element(by.css('#adf-code-configuration-editor div.overflow-guard > textarea'));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
textField.sendKeys(text);
|
||||
return this;
|
||||
}
|
||||
|
||||
enterBigConfigurationText(text) {
|
||||
const textField = element(by.css('#adf-code-configuration-editor div.overflow-guard > textarea'));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
|
||||
browser.executeScript('this.monaco.editor.getModels()[0].setValue(`' + text + '`)');
|
||||
return this;
|
||||
@@ -37,64 +37,64 @@ export class ConfigEditorPage {
|
||||
|
||||
clickSaveButton() {
|
||||
const saveButton = element(by.id('adf-configuration-save'));
|
||||
Util.waitUntilElementIsVisible(saveButton);
|
||||
Util.waitUntilElementIsClickable(saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(saveButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(saveButton);
|
||||
return saveButton.click();
|
||||
}
|
||||
|
||||
clickClearButton() {
|
||||
const clearButton = element(by.id('adf-configuration-clear'));
|
||||
Util.waitUntilElementIsVisible(clearButton);
|
||||
Util.waitUntilElementIsClickable(clearButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(clearButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(clearButton);
|
||||
return clearButton.click();
|
||||
}
|
||||
|
||||
clickFileConfiguration() {
|
||||
const button = element(by.id('adf-file-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
|
||||
clickSearchConfiguration() {
|
||||
const button = element(by.id('adf-search-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
|
||||
clickProcessListCloudConfiguration() {
|
||||
const button = element(by.id('adf-process-list-cloud-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
|
||||
clickEditProcessCloudConfiguration() {
|
||||
const button = element(by.id('adf-edit-process-filter-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
|
||||
clickEditTaskConfiguration() {
|
||||
const button = element(by.id('adf-edit-task-filter-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
|
||||
clickTaskListCloudConfiguration() {
|
||||
const button = element(by.id('adf-task-list-cloud-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
|
||||
clickInfinitePaginationConfiguration() {
|
||||
const button = element(by.id('adf-infinite-pagination-conf'));
|
||||
Util.waitUntilElementIsVisible(button);
|
||||
Util.waitUntilElementIsClickable(button);
|
||||
BrowserVisibility.waitUntilElementIsVisible(button);
|
||||
BrowserVisibility.waitUntilElementIsClickable(button);
|
||||
return button.click();
|
||||
}
|
||||
}
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
import { by, element, ElementFinder, browser } from 'protractor';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class DocumentListPage {
|
||||
|
||||
@@ -34,21 +34,21 @@ export class DocumentListPage {
|
||||
}
|
||||
|
||||
checkLockedIcon(content) {
|
||||
const row = this.dataTable.getRowParentElement('Display name', content);
|
||||
const row = this.dataTable.getRow('Display name', content);
|
||||
const lockIcon = row.element(by.cssContainingText('div[title="Lock"] mat-icon', 'lock'));
|
||||
Util.waitUntilElementIsVisible(lockIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(lockIcon);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkUnlockedIcon(content) {
|
||||
const row = this.dataTable.getRowParentElement('Display name', content);
|
||||
const row = this.dataTable.getRow('Display name', content);
|
||||
const lockIcon = row.element(by.cssContainingText('div[title="Lock"] mat-icon', 'lock_open'));
|
||||
Util.waitUntilElementIsVisible(lockIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(lockIcon);
|
||||
return this;
|
||||
}
|
||||
|
||||
waitForTableBody() {
|
||||
return Util.waitUntilElementIsVisible(this.tableBody);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.tableBody);
|
||||
}
|
||||
|
||||
getTooltip(nodeName) {
|
||||
@@ -64,15 +64,15 @@ export class DocumentListPage {
|
||||
}
|
||||
|
||||
clickOnActionMenu(content) {
|
||||
const row = this.dataTable.getRowParentElement('Display name', content);
|
||||
const row = this.dataTable.getRow('Display name', content);
|
||||
row.element(this.optionButton).click();
|
||||
Util.waitUntilElementIsVisible(this.actionMenu);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.actionMenu);
|
||||
browser.sleep(500);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkActionMenuIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.actionMenu);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.actionMenu);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -15,9 +15,9 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { by, browser, protractor } from 'protractor';
|
||||
import { DatePickerPage } from '../../../material/datePickerPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class DateRangeFilterPage {
|
||||
|
||||
@@ -54,25 +54,25 @@ export class DateRangeFilterPage {
|
||||
}
|
||||
|
||||
openFromDatePicker() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.fromDateToggle));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.fromDateToggle));
|
||||
this.filter.element(this.fromDateToggle).click();
|
||||
return new DatePickerPage().checkDatePickerIsDisplayed();
|
||||
}
|
||||
|
||||
openToDatePicker() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.toDateToggle));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.toDateToggle));
|
||||
this.filter.element(this.toDateToggle).click();
|
||||
return new DatePickerPage().checkDatePickerIsDisplayed();
|
||||
}
|
||||
|
||||
clickFromField() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.fromField));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.fromField));
|
||||
this.filter.element(this.fromField).click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkFromErrorMessageIsDisplayed(msg) {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromErrorMessage));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromErrorMessage));
|
||||
browser.controlFlow().execute(async () => {
|
||||
await expect(this.filter.element(this.fromErrorMessage).getText()).toEqual(msg);
|
||||
});
|
||||
@@ -80,17 +80,17 @@ export class DateRangeFilterPage {
|
||||
}
|
||||
|
||||
checkFromErrorMessageIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.fromErrorMessage));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.fromErrorMessage));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkFromFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromField));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromField));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkFromDateToggleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromDateToggle));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromDateToggle));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -107,13 +107,13 @@ export class DateRangeFilterPage {
|
||||
}
|
||||
|
||||
clickToField() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.toField));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.toField));
|
||||
this.filter.element(this.toField).click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkToErrorMessageIsDisplayed(msg) {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toErrorMessage));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toErrorMessage));
|
||||
browser.controlFlow().execute(async () => {
|
||||
await expect(this.filter.element(this.toErrorMessage).getText()).toEqual(msg);
|
||||
});
|
||||
@@ -121,23 +121,23 @@ export class DateRangeFilterPage {
|
||||
}
|
||||
|
||||
checkToFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toField));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toField));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkToDateToggleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toDateToggle));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toDateToggle));
|
||||
return this;
|
||||
}
|
||||
|
||||
clickApplyButton() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.applyButton));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.applyButton));
|
||||
this.filter.element(this.applyButton).click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkApplyButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.applyButton));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.applyButton));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -156,7 +156,7 @@ export class DateRangeFilterPage {
|
||||
}
|
||||
|
||||
checkClearButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.clearButton));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.clearButton));
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -14,8 +14,8 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { by, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class NumberRangeFilterPage {
|
||||
|
||||
@@ -33,7 +33,7 @@ export class NumberRangeFilterPage {
|
||||
this.filter = filter;
|
||||
}
|
||||
clearFromField() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.fromInput));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.fromInput));
|
||||
this.filter.element(this.fromInput).getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
this.filter.element(this.fromInput).sendKeys(protractor.Key.BACK_SPACE);
|
||||
@@ -52,27 +52,27 @@ export class NumberRangeFilterPage {
|
||||
return this;
|
||||
}
|
||||
getFromErrorRequired() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromErrorRequired));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromErrorRequired));
|
||||
return this.filter.element(this.fromErrorRequired).getText();
|
||||
}
|
||||
checkFromErrorRequiredIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromErrorRequired));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromErrorRequired));
|
||||
return this;
|
||||
}
|
||||
getFromErrorInvalid() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromErrorInvalid));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromErrorInvalid));
|
||||
return this.filter.element(this.fromErrorInvalid).getText();
|
||||
}
|
||||
checkFromErrorInvalidIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromErrorInvalid));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromErrorInvalid));
|
||||
return this;
|
||||
}
|
||||
checkFromFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.fromInput));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.fromInput));
|
||||
return this;
|
||||
}
|
||||
clearToField() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.toInput));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.toInput));
|
||||
this.filter.element(this.toInput).getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
this.filter.element(this.toInput).sendKeys(protractor.Key.BACK_SPACE);
|
||||
@@ -91,51 +91,51 @@ export class NumberRangeFilterPage {
|
||||
return this;
|
||||
}
|
||||
getToErrorRequired() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toErrorRequired));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toErrorRequired));
|
||||
return this.filter.element(this.toErrorRequired).getText();
|
||||
}
|
||||
checkToErrorRequiredIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toErrorRequired));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toErrorRequired));
|
||||
return this;
|
||||
}
|
||||
getToErrorInvalid() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toErrorInvalid));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toErrorInvalid));
|
||||
return this.filter.element(this.toErrorInvalid).getText();
|
||||
}
|
||||
checkToErrorInvalidIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toErrorInvalid));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toErrorInvalid));
|
||||
return this;
|
||||
}
|
||||
checkToFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.toInput));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.toInput));
|
||||
return this;
|
||||
}
|
||||
clickApplyButton() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.applyButton));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.applyButton));
|
||||
this.filter.element(this.applyButton).click();
|
||||
return this;
|
||||
}
|
||||
checkApplyButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.applyButton));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.applyButton));
|
||||
return this;
|
||||
}
|
||||
checkApplyButtonIsEnabled() {
|
||||
return this.filter.element(this.applyButton).isEnabled();
|
||||
}
|
||||
clickClearButton() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.clearButton));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.clearButton));
|
||||
this.filter.element(this.clearButton).click();
|
||||
return this;
|
||||
}
|
||||
checkClearButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.clearButton));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.clearButton));
|
||||
return this;
|
||||
}
|
||||
checkNoErrorMessageIsDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.fromErrorInvalid));
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.fromErrorRequired));
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.toErrorInvalid));
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.toErrorRequired));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.fromErrorInvalid));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.fromErrorRequired));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.toErrorInvalid));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.toErrorRequired));
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { element, by, ElementFinder } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchCheckListPage {
|
||||
|
||||
@@ -31,26 +31,26 @@ export class SearchCheckListPage {
|
||||
}
|
||||
|
||||
clickCheckListOption(option) {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const result = this.filter.all(by.css(`mat-checkbox[data-automation-id*='-${option}'] .mat-checkbox-inner-container`)).first();
|
||||
Util.waitUntilElementIsVisible(result);
|
||||
Util.waitUntilElementIsClickable(result);
|
||||
BrowserVisibility.waitUntilElementIsVisible(result);
|
||||
BrowserVisibility.waitUntilElementIsClickable(result);
|
||||
result.click();
|
||||
}
|
||||
|
||||
checkChipIsDisplayed(option) {
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText('mat-chip', option)).element(by.css('mat-icon')));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText('mat-chip', option)).element(by.css('mat-icon')));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkChipIsNotDisplayed(option) {
|
||||
Util.waitUntilElementIsNotOnPage(element(by.cssContainingText('mat-chip', option)).element(by.css('mat-icon')));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(element(by.cssContainingText('mat-chip', option)).element(by.css('mat-icon')));
|
||||
return this;
|
||||
}
|
||||
|
||||
removeFilterOption(option) {
|
||||
const cancelChipButton = element(by.cssContainingText('mat-chip', option)).element(by.css('mat-icon'));
|
||||
Util.waitUntilElementIsClickable(cancelChipButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(cancelChipButton);
|
||||
cancelChipButton.click();
|
||||
return this;
|
||||
}
|
||||
@@ -63,14 +63,14 @@ export class SearchCheckListPage {
|
||||
}
|
||||
|
||||
checkSearchFilterInputIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.all(this.inputBy).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.all(this.inputBy).first());
|
||||
return this;
|
||||
}
|
||||
|
||||
searchInFilter(option) {
|
||||
Util.waitUntilElementIsClickable(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter);
|
||||
const inputElement = this.filter.all(this.inputBy).first();
|
||||
Util.waitUntilElementIsClickable(inputElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(inputElement);
|
||||
|
||||
inputElement.clear();
|
||||
this.filter.all(this.inputBy).first().sendKeys(option);
|
||||
@@ -78,22 +78,22 @@ export class SearchCheckListPage {
|
||||
}
|
||||
|
||||
checkShowLessButtonIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.showLessBy));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.showLessBy));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkShowLessButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.showLessBy));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.showLessBy));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkShowMoreButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.showMoreBy));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.showMoreBy));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkShowMoreButtonIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.showMoreBy));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.showMoreBy));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -104,7 +104,7 @@ export class SearchCheckListPage {
|
||||
|
||||
this.clickShowMoreButtonUntilIsNotDisplayed();
|
||||
}
|
||||
}, (err) => {
|
||||
}, () => {
|
||||
});
|
||||
return this;
|
||||
}
|
||||
@@ -116,14 +116,14 @@ export class SearchCheckListPage {
|
||||
|
||||
this.clickShowLessButtonUntilIsNotDisplayed();
|
||||
}
|
||||
}, (err) => {
|
||||
}, () => {
|
||||
});
|
||||
return this;
|
||||
}
|
||||
|
||||
getBucketNumberOfFilterType(option) {
|
||||
const fileTypeFilter = this.filter.all(by.css('mat-checkbox[data-automation-id*=".' + option + '"] span')).first();
|
||||
Util.waitUntilElementIsVisible(fileTypeFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(fileTypeFilter);
|
||||
const bucketNumber = fileTypeFilter.getText().then((valueOfBucket) => {
|
||||
const numberOfBucket = valueOfBucket.split('(')[1];
|
||||
const totalNumberOfBucket = numberOfBucket.split(')')[0];
|
||||
@@ -134,49 +134,49 @@ export class SearchCheckListPage {
|
||||
}
|
||||
|
||||
checkCheckListOptionIsDisplayed(option) {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const result = this.filter.element(by.css(`mat-checkbox[data-automation-id*='-${option}']`));
|
||||
return Util.waitUntilElementIsVisible(result);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(result);
|
||||
}
|
||||
|
||||
checkCheckListOptionIsNotSelected(option) {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const result = this.filter.element(by.css(`mat-checkbox[data-automation-id*='-${option}'][class*='checked']`));
|
||||
return Util.waitUntilElementIsNotVisible(result);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(result);
|
||||
}
|
||||
|
||||
checkCheckListOptionIsSelected(option) {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const result = this.filter.element(by.css(`mat-checkbox[data-automation-id*='-${option}'][class*='checked']`));
|
||||
return Util.waitUntilElementIsVisible(result);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(result);
|
||||
}
|
||||
|
||||
checkClearAllButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const result = this.filter.element(this.clearAllButton);
|
||||
return Util.waitUntilElementIsVisible(result);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(result);
|
||||
}
|
||||
|
||||
clickClearAllButton() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const result = this.filter.element(this.clearAllButton);
|
||||
Util.waitUntilElementIsVisible(result);
|
||||
BrowserVisibility.waitUntilElementIsVisible(result);
|
||||
return result.click();
|
||||
}
|
||||
|
||||
getCheckListOptionsNumberOnPage() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const checkListOptions = this.filter.all(by.css('div[class="checklist"] mat-checkbox'));
|
||||
return checkListOptions.count();
|
||||
}
|
||||
|
||||
clickShowMoreButton() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.showMoreBy));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.showMoreBy));
|
||||
return this.filter.element(this.showMoreBy).click();
|
||||
}
|
||||
|
||||
clickShowLessButton() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.showLessBy));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.showLessBy));
|
||||
return this.filter.element(this.showLessBy).click();
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { element, by, browser } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchRadioPage {
|
||||
|
||||
@@ -30,12 +30,12 @@ export class SearchRadioPage {
|
||||
|
||||
checkFilterRadioButtonIsDisplayed(filterName) {
|
||||
const filterType = element(by.css('mat-radio-button[data-automation-id="search-radio-' + filterName + '"]'));
|
||||
return Util.waitUntilElementIsVisible(filterType);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(filterType);
|
||||
}
|
||||
|
||||
checkFilterRadioButtonIsChecked(filterName) {
|
||||
const selectedFilterType = element(by.css('mat-radio-button[data-automation-id="search-radio-' + filterName + '"][class*="checked"]'));
|
||||
return Util.waitUntilElementIsVisible(selectedFilterType);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(selectedFilterType);
|
||||
}
|
||||
|
||||
clickFilterRadioButton(filterName) {
|
||||
@@ -48,28 +48,28 @@ export class SearchRadioPage {
|
||||
}
|
||||
|
||||
checkShowMoreButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.showMoreButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.showMoreButton);
|
||||
}
|
||||
|
||||
checkShowLessButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.showLessButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.showLessButton);
|
||||
}
|
||||
|
||||
checkShowMoreButtonIsNotDisplayed() {
|
||||
return Util.waitUntilElementIsNotVisible(this.showMoreButton);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(this.showMoreButton);
|
||||
}
|
||||
|
||||
checkShowLessButtonIsNotDisplayed() {
|
||||
return Util.waitUntilElementIsNotVisible(this.showLessButton);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(this.showLessButton);
|
||||
}
|
||||
|
||||
clickShowMoreButton() {
|
||||
Util.waitUntilElementIsVisible(this.showMoreButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.showMoreButton);
|
||||
return this.showMoreButton.click();
|
||||
}
|
||||
|
||||
clickShowLessButton() {
|
||||
Util.waitUntilElementIsVisible(this.showLessButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.showLessButton);
|
||||
return this.showLessButton.click();
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { browser, by } from 'protractor';
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchSliderPage {
|
||||
|
||||
@@ -51,17 +51,17 @@ export class SearchSliderPage {
|
||||
}
|
||||
|
||||
checkSliderIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.slider));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.slider));
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSliderWithThumbLabelIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter.element(this.sliderWithThumbLabel));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter.element(this.sliderWithThumbLabel));
|
||||
return this;
|
||||
}
|
||||
|
||||
clickClearButton() {
|
||||
Util.waitUntilElementIsClickable(this.filter.element(this.clearButton));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter.element(this.clearButton));
|
||||
this.filter.element(this.clearButton).click();
|
||||
return this;
|
||||
}
|
||||
@@ -71,7 +71,7 @@ export class SearchSliderPage {
|
||||
}
|
||||
|
||||
checkClearButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter.element(this.clearButton));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter.element(this.clearButton));
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchSortingPickerPage {
|
||||
|
||||
@@ -25,18 +25,18 @@ export class SearchSortingPickerPage {
|
||||
optionsDropdown = element(by.css('div[class*="mat-select-panel"]'));
|
||||
|
||||
sortBy(sortOrder, sortType) {
|
||||
Util.waitUntilElementIsClickable(this.sortingSelector);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.sortingSelector);
|
||||
this.sortingSelector.click();
|
||||
|
||||
const selectedSortingOption = element(by.cssContainingText('span[class="mat-option-text"]', sortType));
|
||||
Util.waitUntilElementIsClickable(selectedSortingOption);
|
||||
BrowserVisibility.waitUntilElementIsClickable(selectedSortingOption);
|
||||
selectedSortingOption.click();
|
||||
|
||||
this.sortByOrder(sortOrder);
|
||||
}
|
||||
|
||||
sortByOrder(sortOrder) {
|
||||
Util.waitUntilElementIsVisible(this.orderArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.orderArrow);
|
||||
this.orderArrow.getText().then((result) => {
|
||||
if (sortOrder === true) {
|
||||
if (result !== 'arrow_upward') {
|
||||
@@ -52,42 +52,42 @@ export class SearchSortingPickerPage {
|
||||
|
||||
clickSortingOption(option) {
|
||||
const selectedSortingOption = element(by.cssContainingText('span[class="mat-option-text"]', option));
|
||||
Util.waitUntilElementIsClickable(selectedSortingOption);
|
||||
BrowserVisibility.waitUntilElementIsClickable(selectedSortingOption);
|
||||
selectedSortingOption.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickSortingSelector() {
|
||||
Util.waitUntilElementIsClickable(this.sortingSelector);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.sortingSelector);
|
||||
this.sortingSelector.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkOptionIsDisplayed(option) {
|
||||
const optionSelector = this.optionsDropdown.element(by.cssContainingText('span[class="mat-option-text"]', option));
|
||||
Util.waitUntilElementIsVisible(optionSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(optionSelector);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkOptionIsNotDisplayed(option) {
|
||||
const optionSelector = this.optionsDropdown.element(by.cssContainingText('span[class="mat-option-text"]', option));
|
||||
Util.waitUntilElementIsNotVisible(optionSelector);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(optionSelector);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkOptionsDropdownIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.optionsDropdown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.optionsDropdown);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSortingSelectorIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.sortingSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.sortingSelector);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkOrderArrowIsDownward() {
|
||||
const deferred = protractor.promise.defer();
|
||||
Util.waitUntilElementIsVisible(this.orderArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.orderArrow);
|
||||
this.orderArrow.getText().then((result) => {
|
||||
deferred.fulfill(result !== 'arrow_upward');
|
||||
});
|
||||
@@ -95,7 +95,7 @@ export class SearchSortingPickerPage {
|
||||
}
|
||||
|
||||
checkOrderArrowIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.orderArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.orderArrow);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../../util/util';
|
||||
import { protractor, by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchTextPage {
|
||||
|
||||
@@ -28,12 +28,12 @@ export class SearchTextPage {
|
||||
}
|
||||
|
||||
getNamePlaceholder() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
return this.filter.element(this.inputBy).getAttribute('placeholder');
|
||||
}
|
||||
|
||||
searchByName(name) {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
this.filter.element(this.inputBy).clear();
|
||||
this.filter.element(this.inputBy).sendKeys(name).sendKeys(protractor.Key.ENTER);
|
||||
}
|
||||
|
@@ -15,7 +15,6 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../util/util';
|
||||
import { by, ElementFinder } from 'protractor';
|
||||
import { SearchTextPage } from './components/search-text';
|
||||
import { SearchCheckListPage } from './components/search-checkList';
|
||||
@@ -23,6 +22,7 @@ import { SearchRadioPage } from './components/search-radio';
|
||||
import { DateRangeFilterPage } from './components/dateRangeFilterPage';
|
||||
import { NumberRangeFilterPage } from './components/numberRangeFilterPage';
|
||||
import { SearchSliderPage } from './components/search-slider.page';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchCategoriesPage {
|
||||
|
||||
@@ -51,19 +51,19 @@ export class SearchCategoriesPage {
|
||||
}
|
||||
|
||||
checkFilterIsDisplayed(filter: ElementFinder) {
|
||||
Util.waitUntilElementIsVisible(filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(filter);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickFilter(filter: ElementFinder) {
|
||||
Util.waitUntilElementIsVisible(filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(filter);
|
||||
filter.element(by.css('mat-expansion-panel-header')).click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickFilterHeader(filter: ElementFinder) {
|
||||
const fileSizeFilterHeader = filter.element(by.css('mat-expansion-panel-header'));
|
||||
Util.waitUntilElementIsClickable(fileSizeFilterHeader);
|
||||
BrowserVisibility.waitUntilElementIsClickable(fileSizeFilterHeader);
|
||||
fileSizeFilterHeader.click();
|
||||
return this;
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { element, by, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class TreeViewPage {
|
||||
|
||||
@@ -26,42 +26,42 @@ export class TreeViewPage {
|
||||
nodesOnPage = element.all(by.css('mat-tree-node'));
|
||||
|
||||
checkTreeViewTitleIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.treeViewTitle);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.treeViewTitle);
|
||||
}
|
||||
|
||||
getNodeId() {
|
||||
Util.waitUntilElementIsVisible(this.nodeIdInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nodeIdInput);
|
||||
return this.nodeIdInput.getAttribute('value');
|
||||
}
|
||||
|
||||
clickNode(nodeName) {
|
||||
const node = element(by.css('mat-tree-node[id="' + nodeName + '-tree-child-node"] button'));
|
||||
Util.waitUntilElementIsClickable(node);
|
||||
BrowserVisibility.waitUntilElementIsClickable(node);
|
||||
return node.click();
|
||||
}
|
||||
|
||||
checkNodeIsDisplayedAsClosed(nodeName) {
|
||||
const node = element(by.css('mat-tree-node[id="' + nodeName + '-tree-child-node"][aria-expanded="false"]'));
|
||||
return Util.waitUntilElementIsVisible(node);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(node);
|
||||
}
|
||||
|
||||
checkNodeIsDisplayedAsOpen(nodeName) {
|
||||
const node = element(by.css('mat-tree-node[id="' + nodeName + '-tree-child-node"][aria-expanded="true"]'));
|
||||
return Util.waitUntilElementIsVisible(node);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(node);
|
||||
}
|
||||
|
||||
checkClickedNodeName(nodeName) {
|
||||
const clickedNode = element(by.cssContainingText('span', ' CLICKED NODE: ' + nodeName + ''));
|
||||
return Util.waitUntilElementIsVisible(clickedNode);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(clickedNode);
|
||||
}
|
||||
|
||||
checkNodeIsNotDisplayed(nodeName) {
|
||||
const node = element(by.id('' + nodeName + '-tree-child-node'));
|
||||
return Util.waitUntilElementIsNotVisible(node);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(node);
|
||||
}
|
||||
|
||||
clearNodeIdInput() {
|
||||
Util.waitUntilElementIsVisible(this.nodeIdInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nodeIdInput);
|
||||
this.nodeIdInput.getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
this.nodeIdInput.sendKeys(protractor.Key.BACK_SPACE);
|
||||
@@ -70,11 +70,11 @@ export class TreeViewPage {
|
||||
}
|
||||
|
||||
checkNoNodeIdMessageIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.noNodeMessage);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.noNodeMessage);
|
||||
}
|
||||
|
||||
addNodeId(nodeId) {
|
||||
Util.waitUntilElementIsVisible(this.nodeIdInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nodeIdInput);
|
||||
this.nodeIdInput.click();
|
||||
this.nodeIdInput.clear();
|
||||
this.nodeIdInput.sendKeys(nodeId + ' ');
|
||||
@@ -83,7 +83,7 @@ export class TreeViewPage {
|
||||
|
||||
checkErrorMessageIsDisplayed() {
|
||||
const clickedNode = element(by.cssContainingText('span', 'An Error Occurred '));
|
||||
return Util.waitUntilElementIsVisible(clickedNode);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(clickedNode);
|
||||
}
|
||||
|
||||
getTotalNodes() {
|
||||
|
@@ -16,22 +16,20 @@
|
||||
*/
|
||||
|
||||
import TestConfig = require('../../test.config');
|
||||
import { Util } from '../../util/util';
|
||||
import { DocumentListPage } from './content-services/documentListPage';
|
||||
import { CreateFolderDialog } from './dialog/createFolderDialog';
|
||||
import { CreateLibraryDialog } from './dialog/createLibraryDialog';
|
||||
import { NodeActions } from '../../actions/ACS/node.actions';
|
||||
import { DropActions } from '../../actions/drop.actions';
|
||||
import { by, element, protractor, $$, browser } from 'protractor';
|
||||
|
||||
import path = require('path');
|
||||
import { DateUtil } from '../../util/dateUtil';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ContentServicesPage {
|
||||
|
||||
contentList = new DocumentListPage(element.all(by.css('adf-upload-drag-area adf-document-list')).first());
|
||||
createFolderDialog = new CreateFolderDialog();
|
||||
nodeActions = new NodeActions();
|
||||
createLibraryDialog = new CreateLibraryDialog();
|
||||
dragAndDropAction = new DropActions();
|
||||
uploadBorder = element(by.id('document-list-container'));
|
||||
@@ -75,6 +73,8 @@ export class ContentServicesPage {
|
||||
lockContentElement = element(by.css('button[data-automation-id="DOCUMENT_LIST.ACTIONS.LOCK"]'));
|
||||
downloadContent = element(by.css('button[data-automation-id*="DOWNLOAD"]'));
|
||||
siteListDropdown = element(by.css(`mat-select[data-automation-id='site-my-files-option']`));
|
||||
downloadButton = element(by.css('button[title="Download"]'));
|
||||
multiSelectToggle = element(by.cssContainingText('span.mat-slide-toggle-content', ' Multiselect (with checkboxes) '));
|
||||
|
||||
pressContextMenuActionNamed(actionName) {
|
||||
const actionButton = this.checkContextActionIsVisible(actionName);
|
||||
@@ -83,8 +83,8 @@ export class ContentServicesPage {
|
||||
|
||||
checkContextActionIsVisible(actionName) {
|
||||
const actionButton = element(by.css(`button[data-automation-id="context-${actionName}"`));
|
||||
Util.waitUntilElementIsVisible(actionButton);
|
||||
Util.waitUntilElementIsClickable(actionButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(actionButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(actionButton);
|
||||
return actionButton;
|
||||
}
|
||||
|
||||
@@ -104,7 +104,7 @@ export class ContentServicesPage {
|
||||
this.contentList.clickOnActionMenu(content);
|
||||
this.waitForContentOptions();
|
||||
const disabledDelete = element(by.css(`button[data-automation-id*='DELETE'][disabled='true']`));
|
||||
Util.waitUntilElementIsVisible(disabledDelete);
|
||||
BrowserVisibility.waitUntilElementIsVisible(disabledDelete);
|
||||
}
|
||||
|
||||
deleteContent(content) {
|
||||
@@ -136,29 +136,29 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
waitForContentOptions() {
|
||||
Util.waitUntilElementIsVisible(this.copyContentElement);
|
||||
Util.waitUntilElementIsVisible(this.moveContentElement);
|
||||
Util.waitUntilElementIsVisible(this.deleteContentElement);
|
||||
Util.waitUntilElementIsVisible(this.downloadContent);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.copyContentElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.moveContentElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteContentElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.downloadContent);
|
||||
}
|
||||
|
||||
clickFileHyperlink(fileName) {
|
||||
const hyperlink = this.contentList.dataTablePage().getFileHyperlink(fileName);
|
||||
|
||||
Util.waitUntilElementIsClickable(hyperlink);
|
||||
BrowserVisibility.waitUntilElementIsClickable(hyperlink);
|
||||
hyperlink.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkFileHyperlinkIsEnabled(fileName) {
|
||||
const hyperlink = this.contentList.dataTablePage().getFileHyperlink(fileName);
|
||||
Util.waitUntilElementIsVisible(hyperlink);
|
||||
BrowserVisibility.waitUntilElementIsVisible(hyperlink);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickHyperlinkNavigationToggle() {
|
||||
const hyperlinkToggle = element(by.cssContainingText('.mat-slide-toggle-content', 'Hyperlink navigation'));
|
||||
Util.waitUntilElementIsVisible(hyperlinkToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(hyperlinkToggle);
|
||||
hyperlinkToggle.click();
|
||||
return this;
|
||||
}
|
||||
@@ -244,7 +244,7 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
checkRecentFileToBeShowed() {
|
||||
Util.waitUntilElementIsVisible(this.recentFiles);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.recentFiles);
|
||||
}
|
||||
|
||||
expandRecentFiles() {
|
||||
@@ -262,20 +262,20 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
checkRecentFileToBeClosed() {
|
||||
Util.waitUntilElementIsVisible(this.recentFilesClosed);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.recentFilesClosed);
|
||||
}
|
||||
|
||||
checkRecentFileToBeOpened() {
|
||||
Util.waitUntilElementIsVisible(this.recentFilesExpanded);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.recentFilesExpanded);
|
||||
}
|
||||
|
||||
async getRecentFileIcon() {
|
||||
await Util.waitUntilElementIsVisible(this.recentFileIcon);
|
||||
await BrowserVisibility.waitUntilElementIsVisible(this.recentFileIcon);
|
||||
return this.recentFileIcon.getText();
|
||||
}
|
||||
|
||||
checkAcsContainer() {
|
||||
Util.waitUntilElementIsVisible(this.uploadBorder);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadBorder);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -290,8 +290,8 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
clickOnContentServices() {
|
||||
Util.waitUntilElementIsVisible(this.contentServices);
|
||||
Util.waitUntilElementIsClickable(this.contentServices);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.contentServices);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.contentServices);
|
||||
this.contentServices.click();
|
||||
}
|
||||
|
||||
@@ -301,7 +301,7 @@ export class ContentServicesPage {
|
||||
|
||||
currentFolderName() {
|
||||
const deferred = protractor.promise.defer();
|
||||
Util.waitUntilElementIsVisible(this.currentFolder);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.currentFolder);
|
||||
this.currentFolder.getText().then(function (result) {
|
||||
deferred.fulfill(result);
|
||||
});
|
||||
@@ -373,13 +373,13 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
clickOnCreateNewFolder() {
|
||||
Util.waitUntilElementIsVisible(this.createFolderButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createFolderButton);
|
||||
this.createFolderButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
openCreateLibraryDialog() {
|
||||
Util.waitUntilElementIsVisible(this.createLibraryButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createLibraryButton);
|
||||
this.createLibraryButton.click();
|
||||
this.createLibraryDialog.waitForDialogToOpen();
|
||||
return this.createLibraryDialog;
|
||||
@@ -411,54 +411,54 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
getActiveBreadcrumb() {
|
||||
Util.waitUntilElementIsVisible(this.activeBreadcrumb);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeBreadcrumb);
|
||||
return this.activeBreadcrumb.getAttribute('title');
|
||||
}
|
||||
|
||||
uploadFile(fileLocation) {
|
||||
this.checkUploadButton();
|
||||
Util.waitUntilElementIsVisible(this.uploadFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadFileButton);
|
||||
this.uploadFileButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, fileLocation)));
|
||||
this.checkUploadButton();
|
||||
return this;
|
||||
}
|
||||
|
||||
uploadMultipleFile(files) {
|
||||
Util.waitUntilElementIsVisible(this.uploadMultipleFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadMultipleFileButton);
|
||||
let allFiles = path.resolve(path.join(TestConfig.main.rootPath, files[0]));
|
||||
for (let i = 1; i < files.length; i++) {
|
||||
allFiles = allFiles + '\n' + path.resolve(path.join(TestConfig.main.rootPath, files[i]));
|
||||
}
|
||||
this.uploadMultipleFileButton.sendKeys(allFiles);
|
||||
Util.waitUntilElementIsVisible(this.uploadMultipleFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadMultipleFileButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
uploadFolder(folder) {
|
||||
Util.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
this.uploadFolderButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, folder)));
|
||||
Util.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
getSingleFileButtonTooltip() {
|
||||
Util.waitUntilElementIsVisible(this.uploadFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadFileButton);
|
||||
return this.uploadFileButton.getAttribute('title');
|
||||
}
|
||||
|
||||
getMultipleFileButtonTooltip() {
|
||||
Util.waitUntilElementIsVisible(this.uploadMultipleFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadMultipleFileButton);
|
||||
return this.uploadMultipleFileButton.getAttribute('title');
|
||||
}
|
||||
|
||||
getFolderButtonTooltip() {
|
||||
Util.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadFolderButton);
|
||||
return this.uploadFolderButton.getAttribute('title');
|
||||
}
|
||||
|
||||
checkUploadButton() {
|
||||
Util.waitUntilElementIsVisible(this.uploadFileButton);
|
||||
Util.waitUntilElementIsClickable(this.uploadFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.uploadFileButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.uploadFileButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -467,7 +467,7 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
getErrorMessage() {
|
||||
Util.waitUntilElementIsVisible(this.errorSnackBar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorSnackBar);
|
||||
const deferred = protractor.promise.defer();
|
||||
this.errorSnackBar.getText().then(function (text) {
|
||||
deferred.fulfill(text);
|
||||
@@ -477,60 +477,60 @@ export class ContentServicesPage {
|
||||
|
||||
enableInfiniteScrolling() {
|
||||
const infiniteScrollButton = element(by.cssContainingText('.mat-slide-toggle-content', 'Enable Infinite Scrolling'));
|
||||
Util.waitUntilElementIsVisible(infiniteScrollButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(infiniteScrollButton);
|
||||
infiniteScrollButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
enableCustomPermissionMessage() {
|
||||
const customPermissionMessage = element(by.cssContainingText('.mat-slide-toggle-content', 'Enable custom permission message'));
|
||||
Util.waitUntilElementIsVisible(customPermissionMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(customPermissionMessage);
|
||||
customPermissionMessage.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
enableMediumTimeFormat() {
|
||||
const mediumTimeFormat = element(by.css('#enableMediumTimeFormat'));
|
||||
Util.waitUntilElementIsVisible(mediumTimeFormat);
|
||||
BrowserVisibility.waitUntilElementIsVisible(mediumTimeFormat);
|
||||
mediumTimeFormat.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
enableThumbnails() {
|
||||
const thumbnailSlide = element(by.id('adf-thumbnails-upload-switch'));
|
||||
Util.waitUntilElementIsVisible(thumbnailSlide);
|
||||
BrowserVisibility.waitUntilElementIsVisible(thumbnailSlide);
|
||||
thumbnailSlide.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkPaginationIsNotDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.emptyPagination);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.emptyPagination);
|
||||
}
|
||||
|
||||
getDocumentListRowNumber() {
|
||||
const documentList = element(by.css('adf-upload-drag-area adf-document-list'));
|
||||
Util.waitUntilElementIsVisible(documentList);
|
||||
BrowserVisibility.waitUntilElementIsVisible(documentList);
|
||||
return $$('adf-upload-drag-area adf-document-list .adf-datatable-row').count();
|
||||
}
|
||||
|
||||
checkColumnNameHeader() {
|
||||
Util.waitUntilElementIsVisible(this.nameHeader);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nameHeader);
|
||||
}
|
||||
|
||||
checkColumnSizeHeader() {
|
||||
Util.waitUntilElementIsVisible(this.sizeHeader);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.sizeHeader);
|
||||
}
|
||||
|
||||
checkColumnCreatedByHeader() {
|
||||
Util.waitUntilElementIsVisible(this.createdByHeader);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createdByHeader);
|
||||
}
|
||||
|
||||
checkColumnCreatedHeader() {
|
||||
Util.waitUntilElementIsVisible(this.createdHeader);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createdHeader);
|
||||
}
|
||||
|
||||
checkDragAndDropDIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.dragAndDrop);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dragAndDrop);
|
||||
}
|
||||
|
||||
dragAndDropFile(file) {
|
||||
@@ -545,7 +545,7 @@ export class ContentServicesPage {
|
||||
|
||||
checkLockIsDisplayedForElement(name) {
|
||||
const lockButton = element(by.css(`div.adf-datatable-cell[data-automation-id="${name}"] button`));
|
||||
Util.waitUntilElementIsVisible(lockButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(lockButton);
|
||||
}
|
||||
|
||||
getColumnValueForRow(file, columnName) {
|
||||
@@ -554,31 +554,31 @@ export class ContentServicesPage {
|
||||
|
||||
async getStyleValueForRowText(rowName, styleName) {
|
||||
const row = element(by.css(`div.adf-datatable-cell[data-automation-id="${rowName}"] span.adf-datatable-cell-value[title="${rowName}"]`));
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
return row.getCssValue(styleName);
|
||||
}
|
||||
|
||||
checkSpinnerIsShowed() {
|
||||
Util.waitUntilElementIsPresent(this.documentListSpinner);
|
||||
BrowserVisibility.waitUntilElementIsPresent(this.documentListSpinner);
|
||||
}
|
||||
|
||||
checkEmptyFolderTextToBe(text) {
|
||||
Util.waitUntilElementIsVisible(this.emptyFolder);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.emptyFolder);
|
||||
expect(this.emptyFolder.getText()).toContain(text);
|
||||
}
|
||||
|
||||
checkEmptyFolderImageUrlToContain(url) {
|
||||
Util.waitUntilElementIsVisible(this.emptyFolderImage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.emptyFolderImage);
|
||||
expect(this.emptyFolderImage.getAttribute('src')).toContain(url);
|
||||
}
|
||||
|
||||
checkEmptyRecentFileIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.emptyRecent);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.emptyRecent);
|
||||
}
|
||||
|
||||
checkIconForRowIsDisplayed(fileName) {
|
||||
const iconRow = element(by.css(`.adf-document-list-container div.adf-datatable-cell[data-automation-id="${fileName}"] img`));
|
||||
Util.waitUntilElementIsVisible(iconRow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(iconRow);
|
||||
return iconRow;
|
||||
}
|
||||
|
||||
@@ -588,7 +588,7 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
checkGridViewButtonIsVisible() {
|
||||
Util.waitUntilElementIsVisible(this.gridViewButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.gridViewButton);
|
||||
}
|
||||
|
||||
clickGridViewButton() {
|
||||
@@ -597,7 +597,7 @@ export class ContentServicesPage {
|
||||
}
|
||||
|
||||
checkCardViewContainerIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.cardViewContainer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cardViewContainer);
|
||||
}
|
||||
|
||||
getCardElementShowedInPage() {
|
||||
@@ -613,7 +613,7 @@ export class ContentServicesPage {
|
||||
|
||||
checkDocumentCardPropertyIsShowed(elementName, propertyName) {
|
||||
const elementProperty = element(by.css(`.adf-document-list-container div.adf-datatable-cell[data-automation-id="${elementName}"][title="${propertyName}"]`));
|
||||
Util.waitUntilElementIsVisible(elementProperty);
|
||||
BrowserVisibility.waitUntilElementIsVisible(elementProperty);
|
||||
}
|
||||
|
||||
getAttributeValueForElement(elementName, propertyName) {
|
||||
@@ -623,20 +623,20 @@ export class ContentServicesPage {
|
||||
|
||||
checkMenuIsShowedForElementIndex(elementIndex) {
|
||||
const elementMenu = element(by.css(`button[data-automation-id="action_menu_${elementIndex}"]`));
|
||||
Util.waitUntilElementIsVisible(elementMenu);
|
||||
BrowserVisibility.waitUntilElementIsVisible(elementMenu);
|
||||
}
|
||||
|
||||
navigateToCardFolder(folderName) {
|
||||
const folderCard = element(by.css(`.adf-document-list-container div.adf-image-table-cell.adf-datatable-cell[data-automation-id="${folderName}"]`));
|
||||
folderCard.click();
|
||||
const folderSelected = element(by.css(`.adf-datatable-row.adf-is-selected div[data-automation-id="${folderName}"].adf-datatable-cell--image`));
|
||||
Util.waitUntilElementIsVisible(folderSelected);
|
||||
BrowserVisibility.waitUntilElementIsVisible(folderSelected);
|
||||
browser.actions().sendKeys(protractor.Key.ENTER).perform();
|
||||
}
|
||||
|
||||
getGridViewSortingDropdown() {
|
||||
const sortingDropdown = element(by.css('mat-select[data-automation-id="grid-view-sorting"]'));
|
||||
Util.waitUntilElementIsVisible(sortingDropdown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(sortingDropdown);
|
||||
return sortingDropdown;
|
||||
}
|
||||
|
||||
@@ -644,37 +644,48 @@ export class ContentServicesPage {
|
||||
const dropdownSorting = this.getGridViewSortingDropdown();
|
||||
dropdownSorting.click();
|
||||
const optionToClick = element(by.css(`mat-option[data-automation-id="grid-view-sorting-${sortingChosen}"]`));
|
||||
Util.waitUntilElementIsPresent(optionToClick);
|
||||
BrowserVisibility.waitUntilElementIsPresent(optionToClick);
|
||||
optionToClick.click();
|
||||
}
|
||||
|
||||
checkRowIsDisplayed(rowName) {
|
||||
const row = this.contentList.dataTablePage().getRow('Display name', rowName);
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
const row = this.contentList.dataTablePage().getRowElement('Display name', rowName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
}
|
||||
|
||||
typeIntoNodeSelectorSearchField(text) {
|
||||
Util.waitUntilElementIsVisible(this.searchInputElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchInputElement);
|
||||
this.searchInputElement.sendKeys(text);
|
||||
}
|
||||
|
||||
clickContentNodeSelectorResult(name) {
|
||||
const resultElement = element.all(by.css(`div[data-automation-id="content-node-selector-content-list"] div[data-automation-id="${name}"`)).first();
|
||||
Util.waitUntilElementIsVisible(resultElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(resultElement);
|
||||
resultElement.click();
|
||||
}
|
||||
|
||||
clickCopyButton() {
|
||||
Util.waitUntilElementIsClickable(this.copyButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.copyButton);
|
||||
this.copyButton.click();
|
||||
}
|
||||
|
||||
clickShareButton() {
|
||||
Util.waitUntilElementIsClickable(this.shareNodeButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.shareNodeButton);
|
||||
this.shareNodeButton.click();
|
||||
}
|
||||
|
||||
checkSelectedSiteIsDisplayed(siteName) {
|
||||
Util.waitUntilElementIsVisible(this.siteListDropdown.element(by.cssContainingText('.mat-select-value-text span', siteName)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.siteListDropdown.element(by.cssContainingText('.mat-select-value-text span', siteName)));
|
||||
}
|
||||
|
||||
clickDownloadButton() {
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.downloadButton);
|
||||
this.downloadButton.click();
|
||||
}
|
||||
|
||||
clickMultiSelectToggle() {
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.multiSelectToggle);
|
||||
this.multiSelectToggle.click();
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
import { element, by, protractor } from 'protractor';
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class HeaderPage {
|
||||
|
||||
@@ -34,24 +34,24 @@ export class HeaderPage {
|
||||
sideBarPositionLeft = element(by.css('mat-sidenav.mat-drawer.mat-sidenav'));
|
||||
|
||||
checkShowMenuCheckBoxIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.checkBox);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.checkBox);
|
||||
}
|
||||
|
||||
checkChooseHeaderColourIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.headerColor);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.headerColor);
|
||||
}
|
||||
|
||||
checkChangeTitleIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.titleInput);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.titleInput);
|
||||
}
|
||||
|
||||
checkChangeUrlPathIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.iconInput);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.iconInput);
|
||||
}
|
||||
|
||||
clickShowMenuButton() {
|
||||
const checkBox = element.all(by.css('mat-checkbox'));
|
||||
Util.waitUntilElementIsVisible(checkBox);
|
||||
BrowserVisibility.waitUntilElementIsVisible(checkBox);
|
||||
return checkBox.get(0).click();
|
||||
}
|
||||
|
||||
@@ -62,11 +62,11 @@ export class HeaderPage {
|
||||
|
||||
checkAppTitle(name) {
|
||||
const title = element(by.cssContainingText('.adf-app-title', name));
|
||||
return Util.waitUntilElementIsVisible(title);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(title);
|
||||
}
|
||||
|
||||
addTitle(title) {
|
||||
Util.waitUntilElementIsVisible(this.titleInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.titleInput);
|
||||
this.titleInput.click();
|
||||
this.titleInput.sendKeys(title);
|
||||
this.titleInput.sendKeys(protractor.Key.ENTER);
|
||||
@@ -74,66 +74,66 @@ export class HeaderPage {
|
||||
|
||||
checkIconIsDisplayed(url) {
|
||||
const icon = element(by.css('img[src="' + url + '"]'));
|
||||
Util.waitUntilElementIsVisible(icon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(icon);
|
||||
}
|
||||
|
||||
addIcon(url) {
|
||||
Util.waitUntilElementIsVisible(this.iconInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.iconInput);
|
||||
this.iconInput.click();
|
||||
this.iconInput.sendKeys(url);
|
||||
this.iconInput.sendKeys(protractor.Key.ENTER);
|
||||
}
|
||||
|
||||
checkHexColorInputIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.hexColorInput);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.hexColorInput);
|
||||
}
|
||||
|
||||
checkLogoHyperlinkInputIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.logoHyperlinkInput);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.logoHyperlinkInput);
|
||||
}
|
||||
|
||||
checkLogoTooltipInputIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.logoTooltipInput);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.logoTooltipInput);
|
||||
}
|
||||
|
||||
addHexCodeColor(hexCode) {
|
||||
Util.waitUntilElementIsVisible(this.hexColorInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.hexColorInput);
|
||||
this.hexColorInput.click();
|
||||
this.hexColorInput.sendKeys(hexCode);
|
||||
return this.hexColorInput.sendKeys(protractor.Key.ENTER);
|
||||
}
|
||||
|
||||
addLogoHyperlink(hyperlink) {
|
||||
Util.waitUntilElementIsVisible(this.logoHyperlinkInput);
|
||||
Util.waitUntilElementIsClickable(this.logoHyperlinkInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.logoHyperlinkInput);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.logoHyperlinkInput);
|
||||
this.logoHyperlinkInput.click();
|
||||
this.logoHyperlinkInput.sendKeys(hyperlink);
|
||||
return this.logoHyperlinkInput.sendKeys(protractor.Key.ENTER);
|
||||
}
|
||||
|
||||
addLogoTooltip(tooltip) {
|
||||
Util.waitUntilElementIsVisible(this.logoTooltipInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.logoTooltipInput);
|
||||
this.logoTooltipInput.click();
|
||||
this.logoTooltipInput.sendKeys(tooltip);
|
||||
return this.logoTooltipInput.sendKeys(protractor.Key.ENTER);
|
||||
}
|
||||
|
||||
sideBarPositionStart() {
|
||||
Util.waitUntilElementIsVisible(this.positionStart);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.positionStart);
|
||||
return this.positionStart.click();
|
||||
}
|
||||
|
||||
sideBarPositionEnd() {
|
||||
Util.waitUntilElementIsVisible(this.positionEnd);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.positionEnd);
|
||||
return this.positionEnd.click();
|
||||
}
|
||||
|
||||
checkSidebarPositionStart() {
|
||||
return Util.waitUntilElementIsVisible(this.sideBarPositionLeft);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.sideBarPositionLeft);
|
||||
}
|
||||
|
||||
checkSidebarPositionEnd() {
|
||||
return Util.waitUntilElementIsVisible(this.sideBarPositionRight);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.sideBarPositionRight);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -18,7 +18,7 @@
|
||||
import { element, by } from 'protractor';
|
||||
import { ElementFinder } from 'protractor/built/element';
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class InfinitePaginationPage {
|
||||
|
||||
@@ -31,18 +31,18 @@ export class InfinitePaginationPage {
|
||||
}
|
||||
|
||||
clickLoadMoreButton() {
|
||||
Util.waitUntilElementIsVisible(this.loadMoreButton);
|
||||
Util.waitUntilElementIsClickable(this.loadMoreButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.loadMoreButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.loadMoreButton);
|
||||
this.loadMoreButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkLoadMoreButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.loadMoreButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.loadMoreButton);
|
||||
}
|
||||
|
||||
checkLoadMoreButtonIsNotDisplayed() {
|
||||
return Util.waitUntilElementIsNotOnPage(this.loadMoreButton);
|
||||
return BrowserVisibility.waitUntilElementIsNotOnPage(this.loadMoreButton);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -16,8 +16,8 @@
|
||||
*/
|
||||
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../util/util';
|
||||
import { ElementFinder, ElementArrayFinder } from 'protractor/built/element';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class DataTableComponentPage {
|
||||
|
||||
@@ -45,40 +45,41 @@ export class DataTableComponentPage {
|
||||
}
|
||||
|
||||
checkAllRowsButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.selectAll);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectAll);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkAllRows() {
|
||||
Util.waitUntilElementIsClickable(this.selectAll).then(() => {
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectAll);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.selectAll).then(() => {
|
||||
this.selectAll.click();
|
||||
Util.waitUntilElementIsVisible(this.selectAll.element(by.css('input[aria-checked="true"]')));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectAll.element(by.css('input[aria-checked="true"]')));
|
||||
});
|
||||
return this;
|
||||
}
|
||||
|
||||
clickCheckbox(columnName, columnValue) {
|
||||
const checkbox = this.getRowCheckbox(columnName, columnValue);
|
||||
Util.waitUntilElementIsClickable(checkbox);
|
||||
BrowserVisibility.waitUntilElementIsClickable(checkbox);
|
||||
checkbox.click();
|
||||
}
|
||||
|
||||
checkRowIsNotChecked(columnName, columnValue) {
|
||||
Util.waitUntilElementIsNotOnPage(this.getRowCheckbox(columnName, columnValue).element(by.css('input[aria-checked="true"]')));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.getRowCheckbox(columnName, columnValue).element(by.css('input[aria-checked="true"]')));
|
||||
}
|
||||
|
||||
checkRowIsChecked(columnName, columnValue) {
|
||||
const rowCheckbox = this.getRowCheckbox(columnName, columnValue);
|
||||
Util.waitUntilElementIsVisible(rowCheckbox.element(by.css('input[aria-checked="true"]')));
|
||||
BrowserVisibility.waitUntilElementIsVisible(rowCheckbox.element(by.css('input[aria-checked="true"]')));
|
||||
}
|
||||
|
||||
getRowCheckbox(columnName, columnValue) {
|
||||
return this.getRowParentElement(columnName, columnValue)
|
||||
return this.getRow(columnName, columnValue)
|
||||
.element(by.css('mat-checkbox'));
|
||||
}
|
||||
|
||||
checkNoRowIsSelected() {
|
||||
Util.waitUntilElementIsNotOnPage(this.selectedRowNumber);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.selectedRowNumber);
|
||||
}
|
||||
|
||||
getNumberOfSelectedRows() {
|
||||
@@ -92,28 +93,29 @@ export class DataTableComponentPage {
|
||||
|
||||
selectRow(columnName, columnValue) {
|
||||
const row = this.getRow(columnName, columnValue);
|
||||
Util.waitUntilElementIsClickable(row);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
BrowserVisibility.waitUntilElementIsClickable(row);
|
||||
row.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkRowIsSelected(columnName, columnValue) {
|
||||
const selectedRow = this.getRow(columnName, columnValue).element(by.xpath(`ancestor::div[contains(@class, 'is-selected')]`));
|
||||
Util.waitUntilElementIsVisible(selectedRow);
|
||||
const selectedRow = this.getRowElement(columnName, columnValue).element(by.xpath(`ancestor::div[contains(@class, 'is-selected')]`));
|
||||
BrowserVisibility.waitUntilElementIsVisible(selectedRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkRowIsNotSelected(columnName, columnValue) {
|
||||
const selectedRow = this.getRow(columnName, columnValue).element(by.xpath(`ancestor::div[contains(@class, 'is-selected')]`));
|
||||
Util.waitUntilElementIsNotOnPage(selectedRow);
|
||||
const selectedRow = this.getRowElement(columnName, columnValue).element(by.xpath(`ancestor::div[contains(@class, 'is-selected')]`));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(selectedRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
getColumnValueForRow(identifyingColumn, identifyingValue, columnName) {
|
||||
const row = this.getRow(identifyingColumn, identifyingValue).element(by.xpath(`ancestor::div[contains(@class, 'adf-datatable-row')]`));
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
const row = this.getRow(identifyingColumn, identifyingValue);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
const rowColumn = row.element(by.css(`div[title="${columnName}"] span`));
|
||||
Util.waitUntilElementIsVisible(rowColumn);
|
||||
BrowserVisibility.waitUntilElementIsVisible(rowColumn);
|
||||
return rowColumn.getText();
|
||||
}
|
||||
|
||||
@@ -127,7 +129,7 @@ export class DataTableComponentPage {
|
||||
checkListIsSorted(sortOrder, locator) {
|
||||
const deferred = protractor.promise.defer();
|
||||
const column = element.all(by.css(`div[title='${locator}'] span`));
|
||||
Util.waitUntilElementIsVisible(column.first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(column.first());
|
||||
const initialList = [];
|
||||
column.each(function (currentElement) {
|
||||
currentElement.getText().then(function (text) {
|
||||
@@ -147,11 +149,11 @@ export class DataTableComponentPage {
|
||||
rightClickOnRow(columnName, columnValue) {
|
||||
const row = this.getRow(columnName, columnValue);
|
||||
browser.actions().click(row, protractor.Button.RIGHT).perform();
|
||||
Util.waitUntilElementIsVisible(element(by.id('adf-context-menu-content')));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.id('adf-context-menu-content')));
|
||||
}
|
||||
|
||||
getTooltip(columnName, columnValue) {
|
||||
return this.getRow(columnName, columnValue).getAttribute('title');
|
||||
return this.getRowElement(columnName, columnValue).getAttribute('title');
|
||||
}
|
||||
|
||||
getFileHyperlink(filename) {
|
||||
@@ -164,21 +166,21 @@ export class DataTableComponentPage {
|
||||
|
||||
async getAllRowsColumnValues(column) {
|
||||
const columnLocator = by.css("adf-datatable div[class*='adf-datatable-body'] div[class*='adf-datatable-row'] div[title='" + column + "'] span");
|
||||
Util.waitUntilElementIsVisible(element.all(columnLocator).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(columnLocator).first());
|
||||
const initialList: any = await element.all(columnLocator).getText();
|
||||
return initialList.filter((el) => el);
|
||||
}
|
||||
|
||||
async getRowsWithSameColumnValues(columnName, columnValue) {
|
||||
const columnLocator = by.css(`div[title='${columnName}'] div[data-automation-id="text_${columnValue}"] span`);
|
||||
Util.waitUntilElementIsVisible(this.rootElement.all(columnLocator).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.rootElement.all(columnLocator).first());
|
||||
return this.rootElement.all(columnLocator).getText();
|
||||
}
|
||||
|
||||
doubleClickRow(columnName, columnValue) {
|
||||
const row = this.getRow(columnName, columnValue);
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
Util.waitUntilElementIsClickable(row);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
BrowserVisibility.waitUntilElementIsClickable(row);
|
||||
row.click();
|
||||
this.checkRowIsSelected(columnName, columnValue);
|
||||
browser.actions().sendKeys(protractor.Key.ENTER).perform();
|
||||
@@ -186,7 +188,7 @@ export class DataTableComponentPage {
|
||||
}
|
||||
|
||||
waitForTableBody() {
|
||||
Util.waitUntilElementIsVisible(this.tableBody);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.tableBody);
|
||||
}
|
||||
|
||||
getFirstElementDetail(detail) {
|
||||
@@ -200,7 +202,7 @@ export class DataTableComponentPage {
|
||||
|
||||
sortByColumn(sortOrder, column) {
|
||||
const locator = by.css(`div[data-automation-id="auto_id_${column}"]`);
|
||||
Util.waitUntilElementIsVisible(element(locator));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(locator));
|
||||
return element(locator).getAttribute('class').then(function (result) {
|
||||
if (sortOrder === true) {
|
||||
if (!result.includes('sorted-asc')) {
|
||||
@@ -223,49 +225,49 @@ export class DataTableComponentPage {
|
||||
|
||||
checkContentIsDisplayed(columnName, columnValue) {
|
||||
const row = this.getRow(columnName, columnValue);
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkContentIsNotDisplayed(columnName, columnValue) {
|
||||
const row = this.getRow(columnName, columnValue);
|
||||
Util.waitUntilElementIsNotOnPage(row);
|
||||
const row = this.getRowElement(columnName, columnValue);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(row);
|
||||
return this;
|
||||
}
|
||||
|
||||
contentInPosition(position) {
|
||||
Util.waitUntilElementIsVisible(this.contents);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.contents);
|
||||
return this.contents.get(position - 1).getText();
|
||||
}
|
||||
|
||||
getRowParentElement(columnName, columnValue) {
|
||||
getRow(columnName, columnValue) {
|
||||
const row = this.rootElement.all(by.css(`div[title="${columnName}"] div[data-automation-id="text_${columnValue}"]`)).first()
|
||||
.element(by.xpath(`ancestor::div[contains(@class, 'adf-datatable-row')]`));
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
return row;
|
||||
}
|
||||
|
||||
getRow(columnName, columnValue) {
|
||||
getRowElement(columnName, columnValue) {
|
||||
return this.rootElement.all(by.css(`div[title="${columnName}"] div[data-automation-id="text_${columnValue}"] span`)).first();
|
||||
}
|
||||
|
||||
checkSpinnerIsDisplayed() {
|
||||
Util.waitUntilElementIsPresent(this.spinner);
|
||||
BrowserVisibility.waitUntilElementIsPresent(this.spinner);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSpinnerIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotOnPage(this.spinner);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.spinner);
|
||||
return this;
|
||||
}
|
||||
|
||||
tableIsLoaded() {
|
||||
Util.waitUntilElementIsVisible(this.rootElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.rootElement);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkColumnIsDisplayed(column) {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`div[data-automation-id="auto_id_entry.${column}"]`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`div[data-automation-id="auto_id_entry.${column}"]`)));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -278,6 +280,6 @@ export class DataTableComponentPage {
|
||||
}
|
||||
|
||||
getCellByRowAndColumn(rowColumn, rowContent, columnName) {
|
||||
return this.getRowParentElement(rowColumn, rowContent).element(by.css(`div[title='${columnName}']`));
|
||||
return this.getRow(rowColumn, rowContent).element(by.css(`div[title='${columnName}']`));
|
||||
}
|
||||
}
|
||||
|
@@ -16,13 +16,13 @@
|
||||
*/
|
||||
|
||||
import { by, element } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class AboutPage {
|
||||
|
||||
monacoPlugin = element(by.cssContainingText('mat-row > mat-cell', 'monaco plugin'));
|
||||
|
||||
checkMonacoPluginIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.monacoPlugin);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.monacoPlugin);
|
||||
}
|
||||
}
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { element, by } from 'protractor';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { NavigationBarPage } from '../navigationBarPage';
|
||||
@@ -49,7 +49,7 @@ export class CustomSources {
|
||||
}
|
||||
|
||||
waitForToolbarToBeVisible() {
|
||||
Util.waitUntilElementIsVisible(this.toolbar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.toolbar);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -72,7 +72,7 @@ export class CustomSources {
|
||||
|
||||
getStatusCell(rowName) {
|
||||
const cell = this.dataTable.getCellByRowAndColumn('Name', rowName, column.status);
|
||||
Util.waitUntilElementIsVisible(cell);
|
||||
BrowserVisibility.waitUntilElementIsVisible(cell);
|
||||
return cell.getText();
|
||||
}
|
||||
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class DataTablePage {
|
||||
|
||||
@@ -41,54 +41,54 @@ export class DataTablePage {
|
||||
}
|
||||
|
||||
addRow() {
|
||||
Util.waitUntilElementIsVisible(this.addRowElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addRowElement);
|
||||
this.addRowElement.click();
|
||||
}
|
||||
|
||||
replaceRows(id) {
|
||||
const rowID = this.dataTable.getRow('Id', id);
|
||||
Util.waitUntilElementIsVisible(rowID);
|
||||
const rowID = this.dataTable.getRowElement('Id', id);
|
||||
BrowserVisibility.waitUntilElementIsVisible(rowID);
|
||||
this.replaceRowsElement.click();
|
||||
Util.waitUntilElementIsNotVisible(rowID);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(rowID);
|
||||
}
|
||||
|
||||
replaceColumns() {
|
||||
Util.waitUntilElementIsVisible(this.replaceColumnsElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.replaceColumnsElement);
|
||||
this.replaceColumnsElement.click();
|
||||
Util.waitUntilElementIsNotOnPage(this.createdOnColumn);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.createdOnColumn);
|
||||
}
|
||||
|
||||
clickMultiSelect() {
|
||||
Util.waitUntilElementIsVisible(this.multiSelect);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.multiSelect);
|
||||
this.multiSelect.click();
|
||||
}
|
||||
|
||||
clickReset() {
|
||||
Util.waitUntilElementIsVisible(this.reset);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.reset);
|
||||
this.reset.click();
|
||||
}
|
||||
|
||||
checkRowIsNotSelected(rowNumber) {
|
||||
const isRowSelected = this.dataTable.getRow('Id', rowNumber)
|
||||
const isRowSelected = this.dataTable.getRowElement('Id', rowNumber)
|
||||
.element(by.xpath(`ancestor::div[contains(@class, 'adf-datatable-row custom-row-style ng-star-inserted is-selected')]`));
|
||||
Util.waitUntilElementIsNotOnPage(isRowSelected);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(isRowSelected);
|
||||
}
|
||||
|
||||
checkNoRowIsSelected() {
|
||||
Util.waitUntilElementIsNotOnPage(this.selectedRowNumber);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.selectedRowNumber);
|
||||
}
|
||||
|
||||
checkAllRows() {
|
||||
Util.waitUntilElementIsVisible(this.selectAll);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectAll);
|
||||
this.selectAll.click();
|
||||
}
|
||||
|
||||
checkRowIsChecked(rowNumber) {
|
||||
Util.waitUntilElementIsVisible(this.getRowCheckbox(rowNumber));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.getRowCheckbox(rowNumber));
|
||||
}
|
||||
|
||||
checkRowIsNotChecked(rowNumber) {
|
||||
Util.waitUntilElementIsNotOnPage(this.getRowCheckbox(rowNumber));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.getRowCheckbox(rowNumber));
|
||||
}
|
||||
|
||||
getNumberOfSelectedRows() {
|
||||
@@ -96,32 +96,32 @@ export class DataTablePage {
|
||||
}
|
||||
|
||||
clickCheckbox(rowNumber) {
|
||||
const checkbox = this.dataTable.getRow('Id', rowNumber).element(by.xpath(`ancestor::div[contains(@class, 'adf-datatable-row')]//mat-checkbox/label`));
|
||||
Util.waitUntilElementIsVisible(checkbox);
|
||||
const checkbox = this.dataTable.getRowElement('Id', rowNumber).element(by.xpath(`ancestor::div[contains(@class, 'adf-datatable-row')]//mat-checkbox/label`));
|
||||
BrowserVisibility.waitUntilElementIsVisible(checkbox);
|
||||
checkbox.click();
|
||||
}
|
||||
|
||||
selectRow(rowNumber) {
|
||||
const locator = this.dataTable.getRow('Id', rowNumber);
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
Util.waitUntilElementIsClickable(locator);
|
||||
const locator = this.dataTable.getRowElement('Id', rowNumber);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsClickable(locator);
|
||||
locator.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
selectRowWithKeyboard(rowNumber) {
|
||||
const row = this.dataTable.getRow('Id', rowNumber);
|
||||
const row = this.dataTable.getRowElement('Id', rowNumber);
|
||||
browser.actions().sendKeys(protractor.Key.COMMAND).click(row).perform();
|
||||
}
|
||||
|
||||
selectSelectionMode(selectionMode) {
|
||||
const selectMode = element(by.cssContainingText(`span[class='mat-option-text']`, selectionMode));
|
||||
this.selectionButton.click();
|
||||
Util.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
selectMode.click();
|
||||
}
|
||||
|
||||
getRowCheckbox(rowNumber) {
|
||||
return this.dataTable.getRow('Id', rowNumber).element(by.xpath(`ancestor::div/div/mat-checkbox[contains(@class, 'mat-checkbox-checked')]`));
|
||||
return this.dataTable.getRowElement('Id', rowNumber).element(by.xpath(`ancestor::div/div/mat-checkbox[contains(@class, 'mat-checkbox-checked')]`));
|
||||
}
|
||||
}
|
||||
|
@@ -16,13 +16,13 @@
|
||||
*/
|
||||
|
||||
import { by, element } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class LogoutPage {
|
||||
|
||||
logoutSection = element(by.css('div[data-automation-id="adf-logout-section"]'));
|
||||
|
||||
checkLogoutSectionIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.logoutSection);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.logoutSection);
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class PeopleGroupCloudComponentPage {
|
||||
|
||||
@@ -34,39 +34,39 @@ export class PeopleGroupCloudComponentPage {
|
||||
groupCloudComponentTitle = element(by.cssContainingText('mat-card-title', 'Groups Cloud Component'));
|
||||
|
||||
checkPeopleCloudComponentTitleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.peopleCloudComponentTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudComponentTitle);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkGroupsCloudComponentTitleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.groupCloudComponentTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.groupCloudComponentTitle);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickPeopleCloudMultipleSelection() {
|
||||
Util.waitUntilElementIsVisible(this.peopleCloudMultipleSelection);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudMultipleSelection);
|
||||
this.peopleCloudMultipleSelection.click();
|
||||
}
|
||||
|
||||
clickPeopleCloudFilterRole() {
|
||||
Util.waitUntilElementIsVisible(this.peopleCloudFilterRole);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudFilterRole);
|
||||
this.peopleCloudFilterRole.click();
|
||||
}
|
||||
|
||||
clickGroupCloudFilterRole() {
|
||||
Util.waitUntilElementIsVisible(this.groupCloudFilterRole);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.groupCloudFilterRole);
|
||||
this.groupCloudFilterRole.click();
|
||||
}
|
||||
|
||||
enterPeopleRoles(roles) {
|
||||
Util.waitUntilElementIsVisible(this.peopleRoleInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleRoleInput);
|
||||
this.peopleRoleInput.clear();
|
||||
this.peopleRoleInput.sendKeys(roles);
|
||||
return this;
|
||||
}
|
||||
|
||||
clearField(locator) {
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
locator.getAttribute('value').then((result) => {
|
||||
for (let i = result.length; i >= 0; i--) {
|
||||
locator.sendKeys(protractor.Key.BACK_SPACE);
|
||||
@@ -75,12 +75,12 @@ export class PeopleGroupCloudComponentPage {
|
||||
}
|
||||
|
||||
clickGroupCloudMultipleSelection() {
|
||||
Util.waitUntilElementIsVisible(this.groupCloudMultipleSelection);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.groupCloudMultipleSelection);
|
||||
this.groupCloudMultipleSelection.click();
|
||||
}
|
||||
|
||||
enterGroupRoles(roles) {
|
||||
Util.waitUntilElementIsVisible(this.groupRoleInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.groupRoleInput);
|
||||
this.groupRoleInput.clear();
|
||||
this.groupRoleInput.sendKeys(roles);
|
||||
return this;
|
||||
|
@@ -15,12 +15,11 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../util/util';
|
||||
|
||||
import { ProcessFiltersCloudComponent } from '../../process-cloud/processFiltersCloudComponent';
|
||||
import { ProcessListCloudComponent } from '../../process-cloud/processListCloudComponent';
|
||||
import { EditProcessFilterCloudComponent } from '../../process-cloud/editProcessFilterCloudComponent';
|
||||
import { element, by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ProcessCloudDemoPage {
|
||||
|
||||
@@ -69,12 +68,12 @@ export class ProcessCloudDemoPage {
|
||||
}
|
||||
|
||||
getActiveFilterName() {
|
||||
Util.waitUntilElementIsVisible(this.activeFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeFilter);
|
||||
return this.activeFilter.getText();
|
||||
}
|
||||
|
||||
clickOnProcessFilters() {
|
||||
Util.waitUntilElementIsVisible(this.processFilters);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processFilters);
|
||||
return this.processFilters.click();
|
||||
}
|
||||
|
||||
@@ -87,17 +86,17 @@ export class ProcessCloudDemoPage {
|
||||
}
|
||||
|
||||
createButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
newProcessButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.newProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.newProcessButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnCreateButton() {
|
||||
Util.waitUntilElementIsClickable(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.createButton);
|
||||
this.createButton.click();
|
||||
return this;
|
||||
}
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { DataTableComponentPage } from '../../dataTableComponentPage';
|
||||
import { element, by, protractor } from 'protractor';
|
||||
|
||||
@@ -36,25 +36,25 @@ export class ProcessListDemoPage {
|
||||
}
|
||||
|
||||
selectSorting(sort) {
|
||||
Util.waitUntilElementIsVisible(this.stateSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.stateSelector);
|
||||
this.sortSelector.click();
|
||||
const sortLocator = element(by.cssContainingText('mat-option span', sort));
|
||||
Util.waitUntilElementIsVisible(sortLocator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(sortLocator);
|
||||
sortLocator.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
selectStateFilter(state) {
|
||||
Util.waitUntilElementIsVisible(this.stateSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.stateSelector);
|
||||
this.stateSelector.click();
|
||||
const stateLocator = element(by.cssContainingText('mat-option span', state));
|
||||
Util.waitUntilElementIsVisible(stateLocator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(stateLocator);
|
||||
stateLocator.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
addAppId(appId) {
|
||||
Util.waitUntilElementIsVisible(this.appIdInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appIdInput);
|
||||
this.appIdInput.click();
|
||||
this.appIdInput.sendKeys(protractor.Key.ENTER);
|
||||
this.appIdInput.clear();
|
||||
@@ -62,17 +62,17 @@ export class ProcessListDemoPage {
|
||||
}
|
||||
|
||||
clickResetButton() {
|
||||
Util.waitUntilElementIsVisible(this.resetButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.resetButton);
|
||||
return this.resetButton.click();
|
||||
}
|
||||
|
||||
checkErrorMessageIsDisplayed(error) {
|
||||
const errorMessage = element(by.cssContainingText('mat-error', error));
|
||||
Util.waitUntilElementIsVisible(errorMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(errorMessage);
|
||||
}
|
||||
|
||||
checkNoProcessFoundIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.emptyProcessContent);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.emptyProcessContent);
|
||||
}
|
||||
|
||||
checkProcessIsNotDisplayed(processName) {
|
||||
@@ -84,34 +84,34 @@ export class ProcessListDemoPage {
|
||||
}
|
||||
|
||||
checkAppIdFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.appIdInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appIdInput);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkProcessInstanceIdFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.processInstanceInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processInstanceInput);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkStateFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.stateSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.stateSelector);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSortFieldIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.sortSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.sortSelector);
|
||||
return this;
|
||||
}
|
||||
|
||||
addProcessDefinitionId(procDefinitionId) {
|
||||
Util.waitUntilElementIsVisible(this.processDefinitionInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processDefinitionInput);
|
||||
this.processDefinitionInput.click();
|
||||
this.processDefinitionInput.clear();
|
||||
return this.processDefinitionInput.sendKeys(procDefinitionId);
|
||||
}
|
||||
|
||||
addProcessInstanceId(procInstanceId) {
|
||||
Util.waitUntilElementIsVisible(this.processInstanceInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processInstanceInput);
|
||||
this.processInstanceInput.click();
|
||||
this.processInstanceInput.clear();
|
||||
return this.processInstanceInput.sendKeys(procInstanceId);
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
import { TaskFiltersPage } from '../../process-services/taskFiltersPage';
|
||||
@@ -53,7 +53,7 @@ export class TaskFiltersDemoPage {
|
||||
}
|
||||
|
||||
checkActiveFilterActive () {
|
||||
Util.waitUntilElementIsVisible(this.activeFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeFilter);
|
||||
return this.activeFilter.getText();
|
||||
}
|
||||
|
||||
|
@@ -15,10 +15,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../util/util';
|
||||
import { TasksListPage } from '../../process-services/tasksListPage';
|
||||
import { PaginationPage } from '../../paginationPage';
|
||||
import { element, by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class TaskListDemoPage {
|
||||
|
||||
@@ -49,130 +49,130 @@ export class TaskListDemoPage {
|
||||
}
|
||||
|
||||
typeAppId(input) {
|
||||
Util.waitUntilElementIsVisible(this.appId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appId);
|
||||
this.clearText(this.appId);
|
||||
this.appId.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickAppId() {
|
||||
Util.waitUntilElementIsVisible(this.appId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appId);
|
||||
this.appId.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getAppId() {
|
||||
Util.waitUntilElementIsVisible(this.appId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appId);
|
||||
return this.appId.getAttribute('value');
|
||||
}
|
||||
|
||||
typeTaskId(input) {
|
||||
Util.waitUntilElementIsVisible(this.taskId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskId);
|
||||
this.clearText(this.taskId);
|
||||
this.taskId.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
getTaskId() {
|
||||
Util.waitUntilElementIsVisible(this.taskId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskId);
|
||||
return this.taskId.getAttribute('value');
|
||||
}
|
||||
|
||||
typeTaskName(input) {
|
||||
Util.waitUntilElementIsVisible(this.taskName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskName);
|
||||
this.clearText(this.taskName);
|
||||
this.taskName.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
getTaskName() {
|
||||
Util.waitUntilElementIsVisible(this.taskName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskName);
|
||||
return this.taskName.getAttribute('value');
|
||||
}
|
||||
|
||||
typeItemsPerPage(input) {
|
||||
Util.waitUntilElementIsVisible(this.itemsPerPage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.itemsPerPage);
|
||||
this.clearText(this.itemsPerPage);
|
||||
this.itemsPerPage.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
getItemsPerPage() {
|
||||
Util.waitUntilElementIsVisible(this.itemsPerPage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.itemsPerPage);
|
||||
return this.itemsPerPage.getAttribute('value');
|
||||
}
|
||||
|
||||
typeProcessDefinitionId(input) {
|
||||
Util.waitUntilElementIsVisible(this.processDefinitionId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processDefinitionId);
|
||||
this.clearText(this.processDefinitionId);
|
||||
this.processDefinitionId.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
getProcessDefinitionId() {
|
||||
Util.waitUntilElementIsVisible(this.processInstanceId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processInstanceId);
|
||||
return this.processInstanceId.getAttribute('value');
|
||||
}
|
||||
|
||||
typeProcessInstanceId(input) {
|
||||
Util.waitUntilElementIsVisible(this.processInstanceId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processInstanceId);
|
||||
this.clearText(this.processInstanceId);
|
||||
this.processInstanceId.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
getProcessInstanceId() {
|
||||
Util.waitUntilElementIsVisible(this.processInstanceId);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processInstanceId);
|
||||
return this.processInstanceId.getAttribute('value');
|
||||
}
|
||||
|
||||
getItemsPerPageFieldErrorMessage() {
|
||||
Util.waitUntilElementIsVisible(this.itemsPerPageForm);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.itemsPerPageForm);
|
||||
const errorMessage = this.itemsPerPageForm.element(by.css('mat-error'));
|
||||
Util.waitUntilElementIsVisible(errorMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(errorMessage);
|
||||
return errorMessage.getText();
|
||||
}
|
||||
|
||||
typePage(input) {
|
||||
Util.waitUntilElementIsVisible(this.page);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.page);
|
||||
this.clearText(this.page);
|
||||
this.page.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
getPage() {
|
||||
Util.waitUntilElementIsVisible(this.page);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.page);
|
||||
return this.page.getAttribute('value');
|
||||
}
|
||||
|
||||
getPageFieldErrorMessage() {
|
||||
Util.waitUntilElementIsVisible(this.pageForm);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.pageForm);
|
||||
const errorMessage = this.pageForm.element(by.css('mat-error'));
|
||||
Util.waitUntilElementIsVisible(errorMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(errorMessage);
|
||||
return errorMessage.getText();
|
||||
}
|
||||
|
||||
typeDueAfter(input) {
|
||||
Util.waitUntilElementIsVisible(this.dueAfter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dueAfter);
|
||||
this.clearText(this.dueAfter);
|
||||
this.dueAfter.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
typeDueBefore(input) {
|
||||
Util.waitUntilElementIsVisible(this.dueBefore);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dueBefore);
|
||||
this.clearText(this.dueBefore);
|
||||
this.dueBefore.sendKeys(input);
|
||||
return this;
|
||||
}
|
||||
|
||||
clearText(input) {
|
||||
Util.waitUntilElementIsVisible(input);
|
||||
BrowserVisibility.waitUntilElementIsVisible(input);
|
||||
return input.clear();
|
||||
}
|
||||
|
||||
clickResetButton() {
|
||||
Util.waitUntilElementIsVisible(this.resetButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.resetButton);
|
||||
this.resetButton.click();
|
||||
}
|
||||
|
||||
@@ -180,32 +180,32 @@ export class TaskListDemoPage {
|
||||
this.clickOnSortDropDownArrow();
|
||||
|
||||
const sortElement = element.all(by.cssContainingText('mat-option span', sort)).first();
|
||||
Util.waitUntilElementIsClickable(sortElement);
|
||||
Util.waitUntilElementIsVisible(sortElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(sortElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(sortElement);
|
||||
sortElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnSortDropDownArrow() {
|
||||
Util.waitUntilElementIsVisible(this.sortDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.sortDropDownArrow);
|
||||
this.sortDropDownArrow.click();
|
||||
Util.waitUntilElementIsVisible(this.sortSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.sortSelector);
|
||||
}
|
||||
|
||||
selectState(state) {
|
||||
this.clickOnStateDropDownArrow();
|
||||
|
||||
const stateElement = element.all(by.cssContainingText('mat-option span', state)).first();
|
||||
Util.waitUntilElementIsClickable(stateElement);
|
||||
Util.waitUntilElementIsVisible(stateElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(stateElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(stateElement);
|
||||
stateElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnStateDropDownArrow() {
|
||||
Util.waitUntilElementIsVisible(this.stateDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.stateDropDownArrow);
|
||||
this.stateDropDownArrow.click();
|
||||
Util.waitUntilElementIsVisible(this.stateSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.stateSelector);
|
||||
}
|
||||
|
||||
getAllProcessDefinitionIds() {
|
||||
|
@@ -15,14 +15,13 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../../util/util';
|
||||
|
||||
import { TaskFiltersCloudComponent } from '../../process-cloud/taskFiltersCloudComponent';
|
||||
import { TaskListCloudComponent } from '../../process-cloud/taskListCloudComponent';
|
||||
import { EditTaskFilterCloudComponent } from '../../process-cloud/editTaskFilterCloudComponent';
|
||||
import { FormControllersPage } from '../../material/formControllersPage';
|
||||
|
||||
import { element, by, browser } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class TasksCloudDemoPage {
|
||||
|
||||
@@ -81,7 +80,7 @@ export class TasksCloudDemoPage {
|
||||
}
|
||||
|
||||
getActiveFilterName() {
|
||||
Util.waitUntilElementIsVisible(this.activeFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeFilter);
|
||||
return this.activeFilter.getText();
|
||||
}
|
||||
|
||||
@@ -94,7 +93,7 @@ export class TasksCloudDemoPage {
|
||||
}
|
||||
|
||||
clickOnTaskFilters() {
|
||||
Util.waitUntilElementIsVisible(this.taskFilters);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskFilters);
|
||||
return this.taskFilters.click();
|
||||
}
|
||||
|
||||
@@ -107,17 +106,17 @@ export class TasksCloudDemoPage {
|
||||
}
|
||||
|
||||
createButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
newTaskButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.newTaskButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.newTaskButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnCreateButton() {
|
||||
Util.waitUntilElementIsClickable(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.createButton);
|
||||
this.createButton.click();
|
||||
return this;
|
||||
}
|
||||
@@ -129,9 +128,9 @@ export class TasksCloudDemoPage {
|
||||
clickSettingsButton() {
|
||||
this.settingsButton.click();
|
||||
browser.driver.sleep(400);
|
||||
Util.waitUntilElementIsVisible(this.multiSelectionToggle);
|
||||
Util.waitUntilElementIsVisible(this.modeDropDownArrow);
|
||||
Util.waitUntilElementIsClickable(this.modeDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.multiSelectionToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.modeDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.modeDropDownArrow);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -145,16 +144,16 @@ export class TasksCloudDemoPage {
|
||||
this.clickOnSelectionModeDropDownArrow();
|
||||
|
||||
const modeElement = element.all(by.cssContainingText('mat-option span', mode)).first();
|
||||
Util.waitUntilElementIsClickable(modeElement);
|
||||
Util.waitUntilElementIsVisible(modeElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(modeElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(modeElement);
|
||||
modeElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnSelectionModeDropDownArrow() {
|
||||
Util.waitUntilElementIsVisible(this.modeDropDownArrow);
|
||||
Util.waitUntilElementIsClickable(this.modeDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.modeDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.modeDropDownArrow);
|
||||
this.modeDropDownArrow.click();
|
||||
Util.waitUntilElementIsVisible(this.modeSelector);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.modeSelector);
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { browser, by, element } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class CreateFolderDialog {
|
||||
folderNameField = element(by.id('adf-folder-name-input'));
|
||||
@@ -25,13 +25,13 @@ export class CreateFolderDialog {
|
||||
cancelButton = element(by.id('adf-folder-cancel-button'));
|
||||
|
||||
clickOnCreateButton() {
|
||||
Util.waitUntilElementIsVisible(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createButton);
|
||||
this.createButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkCreateBtnIsDisabled() {
|
||||
Util.waitUntilElementIsVisible(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createButton);
|
||||
expect(this.createButton.getAttribute('disabled')).toEqual('true');
|
||||
return this;
|
||||
}
|
||||
@@ -42,13 +42,13 @@ export class CreateFolderDialog {
|
||||
}
|
||||
|
||||
clickOnCancelButton() {
|
||||
Util.waitUntilElementIsVisible(this.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cancelButton);
|
||||
this.cancelButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
addFolderName(folderName) {
|
||||
Util.waitUntilElementIsVisible(this.folderNameField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.folderNameField);
|
||||
this.folderNameField.clear();
|
||||
this.folderNameField.sendKeys(folderName);
|
||||
browser.driver.sleep(500);
|
||||
@@ -56,7 +56,7 @@ export class CreateFolderDialog {
|
||||
}
|
||||
|
||||
addFolderDescription(folderDescription) {
|
||||
Util.waitUntilElementIsVisible(this.folderDescriptionField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.folderDescriptionField);
|
||||
this.folderDescriptionField.clear();
|
||||
this.folderDescriptionField.sendKeys(folderDescription);
|
||||
return this;
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { by, element, browser, protractor } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class CreateLibraryDialog {
|
||||
libraryDialog = element(by.css('[role="dialog"]'));
|
||||
@@ -35,17 +35,17 @@ export class CreateLibraryDialog {
|
||||
|
||||
getSelectedRadio() {
|
||||
const radio = element(by.css('.mat-radio-button[class*="checked"]'));
|
||||
Util.waitUntilElementIsVisible(radio);
|
||||
BrowserVisibility.waitUntilElementIsVisible(radio);
|
||||
return radio.getText();
|
||||
}
|
||||
|
||||
waitForDialogToOpen() {
|
||||
Util.waitUntilElementIsPresent(this.libraryDialog);
|
||||
BrowserVisibility.waitUntilElementIsPresent(this.libraryDialog);
|
||||
return this;
|
||||
}
|
||||
|
||||
waitForDialogToClose() {
|
||||
Util.waitUntilElementIsNotOnPage(this.libraryDialog);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.libraryDialog);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -66,21 +66,21 @@ export class CreateLibraryDialog {
|
||||
}
|
||||
|
||||
getErrorMessage() {
|
||||
Util.waitUntilElementIsVisible(this.errorMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorMessage);
|
||||
return this.errorMessage.getText();
|
||||
}
|
||||
|
||||
getErrorMessages(position) {
|
||||
Util.waitUntilElementIsVisible(this.errorMessages);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorMessages);
|
||||
return this.errorMessages.get(position).getText();
|
||||
}
|
||||
|
||||
waitForLibraryNameHint() {
|
||||
Util.waitUntilElementIsVisible(this.libraryNameHint);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.libraryNameHint);
|
||||
return this;
|
||||
}
|
||||
getLibraryNameHint() {
|
||||
Util.waitUntilElementIsVisible(this.libraryNameHint);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.libraryNameHint);
|
||||
return this.libraryNameHint.getText();
|
||||
}
|
||||
|
||||
@@ -117,7 +117,7 @@ export class CreateLibraryDialog {
|
||||
}
|
||||
|
||||
clickCreate() {
|
||||
Util.waitUntilElementIsClickable(this.createButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.createButton);
|
||||
this.createButton.click();
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class EditProcessFilterDialog {
|
||||
|
||||
@@ -28,32 +28,32 @@ export class EditProcessFilterDialog {
|
||||
|
||||
clickOnSaveButton() {
|
||||
const saveButton = this.componentElement.element(this.saveButtonLocator);
|
||||
Util.waitUntilElementIsVisible(saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(saveButton);
|
||||
saveButton.click();
|
||||
Util.waitUntilElementIsNotVisible(this.componentElement);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.componentElement);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSaveButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.componentElement.element(this.saveButtonLocator));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.componentElement.element(this.saveButtonLocator));
|
||||
return this.componentElement.element(this.saveButtonLocator).isEnabled();
|
||||
}
|
||||
|
||||
clickOnCancelButton() {
|
||||
const cancelButton = this.componentElement.element(this.cancelButtonLocator);
|
||||
Util.waitUntilElementIsVisible(cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(cancelButton);
|
||||
cancelButton.click();
|
||||
Util.waitUntilElementIsNotVisible(this.componentElement);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.componentElement);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkCancelButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.componentElement.element(this.cancelButtonLocator));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.componentElement.element(this.cancelButtonLocator));
|
||||
return this.componentElement.element(this.cancelButtonLocator).isEnabled();
|
||||
}
|
||||
|
||||
getFilterName() {
|
||||
Util.waitUntilElementIsVisible(this.filterNameInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filterNameInput);
|
||||
return this.filterNameInput.getAttribute('value');
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ export class EditProcessFilterDialog {
|
||||
}
|
||||
|
||||
clearFilterName() {
|
||||
Util.waitUntilElementIsVisible(this.filterNameInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filterNameInput);
|
||||
this.filterNameInput.click();
|
||||
this.filterNameInput.getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
@@ -75,7 +75,7 @@ export class EditProcessFilterDialog {
|
||||
}
|
||||
|
||||
getTitle() {
|
||||
Util.waitUntilElementIsVisible(this.title);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.title);
|
||||
return this.title.getText();
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class EditTaskFilterDialog {
|
||||
|
||||
@@ -28,32 +28,32 @@ export class EditTaskFilterDialog {
|
||||
|
||||
clickOnSaveButton() {
|
||||
const saveButton = this.componentElement.element(this.saveButtonLocator);
|
||||
Util.waitUntilElementIsVisible(saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(saveButton);
|
||||
saveButton.click();
|
||||
Util.waitUntilElementIsNotVisible(this.componentElement);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.componentElement);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSaveButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.componentElement.element(this.saveButtonLocator));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.componentElement.element(this.saveButtonLocator));
|
||||
return this.componentElement.element(this.saveButtonLocator).isEnabled();
|
||||
}
|
||||
|
||||
clickOnCancelButton() {
|
||||
const cancelButton = this.componentElement.element(this.cancelButtonLocator);
|
||||
Util.waitUntilElementIsVisible(cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(cancelButton);
|
||||
cancelButton.click();
|
||||
Util.waitUntilElementIsNotVisible(this.componentElement);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.componentElement);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkCancelButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.componentElement.element(this.cancelButtonLocator));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.componentElement.element(this.cancelButtonLocator));
|
||||
return this.componentElement.element(this.cancelButtonLocator).isEnabled();
|
||||
}
|
||||
|
||||
getFilterName() {
|
||||
Util.waitUntilElementIsVisible(this.filterNameInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filterNameInput);
|
||||
return this.filterNameInput.getAttribute('value');
|
||||
}
|
||||
|
||||
@@ -64,7 +64,7 @@ export class EditTaskFilterDialog {
|
||||
}
|
||||
|
||||
clearFilterName() {
|
||||
Util.waitUntilElementIsVisible(this.filterNameInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filterNameInput);
|
||||
this.filterNameInput.click();
|
||||
this.filterNameInput.getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
@@ -75,7 +75,7 @@ export class EditTaskFilterDialog {
|
||||
}
|
||||
|
||||
getTitle() {
|
||||
Util.waitUntilElementIsVisible(this.title);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.title);
|
||||
return this.title.getText();
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class SearchDialog {
|
||||
|
||||
@@ -35,47 +35,47 @@ export class SearchDialog {
|
||||
}
|
||||
|
||||
clickOnSearchIcon() {
|
||||
Util.waitUntilElementIsVisible(this.searchIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchIcon);
|
||||
this.searchIcon.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSearchIconIsVisible() {
|
||||
Util.waitUntilElementIsVisible(this.searchIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchIcon);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSearchBarIsVisible() {
|
||||
Util.waitUntilElementIsVisible(this.searchBar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchBar);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSearchBarIsNotVisible() {
|
||||
Util.waitUntilElementIsVisible(this.searchBar);
|
||||
Util.waitUntilElementIsNotVisible(this.searchBarExpanded);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchBar);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.searchBarExpanded);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkNoResultMessageIsDisplayed() {
|
||||
browser.driver.sleep(500);
|
||||
Util.waitUntilElementIsVisible(this.noResultMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.noResultMessage);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkNoResultMessageIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotOnPage(this.noResultMessage);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.noResultMessage);
|
||||
return this;
|
||||
}
|
||||
|
||||
enterText(text) {
|
||||
Util.waitUntilElementIsVisible(this.searchBar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchBar);
|
||||
browser.executeScript(`document.querySelector("adf-search-control input").click();`);
|
||||
this.searchBar.sendKeys(text);
|
||||
return this;
|
||||
}
|
||||
|
||||
enterTextAndPressEnter(text) {
|
||||
Util.waitUntilElementIsVisible(this.searchBar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchBar);
|
||||
browser.executeScript(`document.querySelector("adf-search-control input").click();`);
|
||||
this.searchBar.sendKeys(text);
|
||||
this.searchBar.sendKeys(protractor.Key.ENTER);
|
||||
@@ -83,8 +83,8 @@ export class SearchDialog {
|
||||
}
|
||||
|
||||
resultTableContainsRow(name) {
|
||||
Util.waitUntilElementIsVisible(this.searchDialog);
|
||||
Util.waitUntilElementIsVisible(this.getRowByRowName(name));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchDialog);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.getRowByRowName(name));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -111,7 +111,7 @@ export class SearchDialog {
|
||||
}
|
||||
|
||||
clearText() {
|
||||
Util.waitUntilElementIsVisible(this.searchBar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchBar);
|
||||
return this.searchBar.clear();
|
||||
}
|
||||
}
|
||||
|
@@ -16,8 +16,8 @@
|
||||
*/
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { FormControllersPage } from '../material/formControllersPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ShareDialog {
|
||||
|
||||
@@ -43,7 +43,7 @@ export class ShareDialog {
|
||||
confirmationRemoveButton = element(by.id('adf-confirm-accept'));
|
||||
|
||||
checkDialogIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.dialogTitle);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.dialogTitle);
|
||||
}
|
||||
|
||||
clickUnShareFile() {
|
||||
@@ -51,92 +51,92 @@ export class ShareDialog {
|
||||
}
|
||||
|
||||
clickConfirmationDialogCancelButton() {
|
||||
Util.waitUntilElementIsVisible(this.confirmationCancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.confirmationCancelButton);
|
||||
this.confirmationCancelButton.click();
|
||||
}
|
||||
|
||||
clickConfirmationDialogRemoveButton() {
|
||||
Util.waitUntilElementIsVisible(this.confirmationRemoveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.confirmationRemoveButton);
|
||||
this.confirmationRemoveButton.click();
|
||||
}
|
||||
|
||||
checkShareLinkIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.shareLink);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.shareLink);
|
||||
}
|
||||
|
||||
getShareLink() {
|
||||
Util.waitUntilElementIsVisible(this.shareLink);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.shareLink);
|
||||
return this.shareLink.getAttribute('value');
|
||||
}
|
||||
|
||||
clickCloseButton() {
|
||||
Util.waitUntilElementIsVisible(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.closeButton);
|
||||
return this.closeButton.click();
|
||||
}
|
||||
|
||||
clickShareLinkButton() {
|
||||
Util.waitUntilElementIsVisible(this.copySharedLinkButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.copySharedLinkButton);
|
||||
return this.copySharedLinkButton.click();
|
||||
}
|
||||
|
||||
shareToggleButtonIsChecked() {
|
||||
Util.waitUntilElementIsPresent(this.shareToggleChecked);
|
||||
BrowserVisibility.waitUntilElementIsPresent(this.shareToggleChecked);
|
||||
}
|
||||
|
||||
shareToggleButtonIsDisabled() {
|
||||
Util.waitUntilElementIsPresent(this.shareToggleDisabled);
|
||||
BrowserVisibility.waitUntilElementIsPresent(this.shareToggleDisabled);
|
||||
}
|
||||
|
||||
shareToggleButtonIsUnchecked() {
|
||||
Util.waitUntilElementIsVisible(this.shareToggleUnchecked);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.shareToggleUnchecked);
|
||||
}
|
||||
|
||||
checkNotificationWithMessage(message) {
|
||||
Util.waitUntilElementIsVisible(
|
||||
BrowserVisibility.waitUntilElementIsVisible(
|
||||
element(by.cssContainingText('simple-snack-bar', message))
|
||||
);
|
||||
}
|
||||
|
||||
waitForNotificationToClose() {
|
||||
Util.waitUntilElementIsStale(element(by.css('simple-snack-bar')));
|
||||
BrowserVisibility.waitUntilElementIsStale(element(by.css('simple-snack-bar')));
|
||||
}
|
||||
|
||||
dialogIsClosed() {
|
||||
Util.waitUntilElementIsStale(this.shareDialog);
|
||||
BrowserVisibility.waitUntilElementIsStale(this.shareDialog);
|
||||
}
|
||||
|
||||
clickDateTimePickerButton() {
|
||||
Util.waitUntilElementIsVisible(this.timeDatePickerButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.timeDatePickerButton);
|
||||
this.timeDatePickerButton.click();
|
||||
}
|
||||
|
||||
calendarTodayDayIsDisabled() {
|
||||
const today: any = this.dayPicker.element(by.css('.mat-datetimepicker-calendar-body-today')).getText();
|
||||
Util.waitUntilElementIsPresent(element(by.cssContainingText('.mat-datetimepicker-calendar-body-disabled', today)));
|
||||
BrowserVisibility.waitUntilElementIsPresent(element(by.cssContainingText('.mat-datetimepicker-calendar-body-disabled', today)));
|
||||
}
|
||||
|
||||
setDefaultDay() {
|
||||
const selector = '.mat-datetimepicker-calendar-body-cell:not(.mat-datetimepicker-calendar-body-disabled)';
|
||||
Util.waitUntilElementIsVisible(this.dayPicker);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dayPicker);
|
||||
const tomorrow = new Date(new Date().getTime() + 48 * 60 * 60 * 1000).getDate().toString();
|
||||
this.dayPicker.element(by.cssContainingText(selector, tomorrow)).click();
|
||||
}
|
||||
|
||||
setDefaultHour() {
|
||||
const selector = '.mat-datetimepicker-clock-cell:not(.mat-datetimepicker-clock-cell-disabled)';
|
||||
Util.waitUntilElementIsVisible(this.clockPicker);
|
||||
Util.waitUntilElementIsVisible(this.hoursPicker);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.clockPicker);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.hoursPicker);
|
||||
this.hoursPicker.all(by.css(selector)).first().click();
|
||||
}
|
||||
|
||||
setDefaultMinutes() {
|
||||
const selector = '.mat-datetimepicker-clock-cell:not(.mat-datetimepicker-clock-cell-disabled)';
|
||||
Util.waitUntilElementIsVisible(this.minutePicker);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.minutePicker);
|
||||
this.minutePicker.all(by.css(selector)).first().click();
|
||||
}
|
||||
|
||||
dateTimePickerDialogIsClosed() {
|
||||
Util.waitUntilElementIsStale(element(by.css('mat-datetimepicker-content')));
|
||||
BrowserVisibility.waitUntilElementIsStale(element(by.css('mat-datetimepicker-content')));
|
||||
}
|
||||
|
||||
getExpirationDate() {
|
||||
@@ -144,14 +144,14 @@ export class ShareDialog {
|
||||
}
|
||||
|
||||
expirationDateInputHasValue(value) {
|
||||
Util.waitUntilElementHasValue(this.expirationDateInput, value);
|
||||
BrowserVisibility.waitUntilElementHasValue(this.expirationDateInput, value);
|
||||
}
|
||||
|
||||
confirmationDialogIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.confirmationDialog);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.confirmationDialog);
|
||||
}
|
||||
|
||||
confirmationDialogIsNotDisplayed() {
|
||||
return Util.waitUntilElementIsNotVisible(this.confirmationDialog);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(this.confirmationDialog);
|
||||
}
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { element, by, protractor, browser } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class UploadDialog {
|
||||
|
||||
@@ -45,28 +45,28 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
checkCloseButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.closeButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
dialogIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.dialog);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dialog);
|
||||
return this;
|
||||
}
|
||||
|
||||
dialogIsMinimized() {
|
||||
Util.waitUntilElementIsVisible(this.minimizedDialog);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.minimizedDialog);
|
||||
return this;
|
||||
}
|
||||
|
||||
dialogIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotOnPage(this.dialog);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.dialog);
|
||||
return this;
|
||||
}
|
||||
|
||||
getRowsName(content) {
|
||||
const row = element.all(by.css(`div[class*='uploading-row'] span[title="${content}"]`)).first();
|
||||
Util.waitUntilElementIsVisible(row);
|
||||
BrowserVisibility.waitUntilElementIsVisible(row);
|
||||
return row;
|
||||
}
|
||||
|
||||
@@ -75,12 +75,12 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
fileIsUploaded(content) {
|
||||
Util.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.uploadedStatusIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.uploadedStatusIcon));
|
||||
return this;
|
||||
}
|
||||
|
||||
fileIsError(content) {
|
||||
Util.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.errorStatusIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.errorStatusIcon));
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -92,29 +92,29 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
fileIsNotDisplayedInDialog(content) {
|
||||
Util.waitUntilElementIsNotVisible(element(by.css(`div[class*='uploading-row'] span[title="${content}"]`)));
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(element(by.css(`div[class*='uploading-row'] span[title="${content}"]`)));
|
||||
return this;
|
||||
}
|
||||
|
||||
cancelUploads() {
|
||||
Util.waitUntilElementIsVisible(this.cancelUploadsElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cancelUploadsElement);
|
||||
this.cancelUploadsElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
fileIsCancelled(content) {
|
||||
Util.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.cancelledStatusIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.cancelledStatusIcon));
|
||||
return this;
|
||||
}
|
||||
|
||||
removeUploadedFile(content) {
|
||||
Util.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.uploadedStatusIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.getRowByRowName(content).element(this.uploadedStatusIcon));
|
||||
this.getRowByRowName(content).element(this.uploadedStatusIcon).click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getTitleText() {
|
||||
Util.waitUntilElementIsVisible(this.title);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.title);
|
||||
const deferred = protractor.promise.defer();
|
||||
this.title.getText().then((text) => {
|
||||
deferred.fulfill(text);
|
||||
@@ -123,7 +123,7 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
getConfirmationDialogTitleText() {
|
||||
Util.waitUntilElementIsVisible(this.canUploadConfirmationTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.canUploadConfirmationTitle);
|
||||
const deferred = protractor.promise.defer();
|
||||
this.canUploadConfirmationTitle.getText().then((text) => {
|
||||
deferred.fulfill(text);
|
||||
@@ -132,7 +132,7 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
getConfirmationDialogDescriptionText() {
|
||||
Util.waitUntilElementIsVisible(this.canUploadConfirmationDescription);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.canUploadConfirmationDescription);
|
||||
const deferred = protractor.promise.defer();
|
||||
this.canUploadConfirmationDescription.getText().then((text) => {
|
||||
deferred.fulfill(text);
|
||||
@@ -141,13 +141,13 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
clickOnConfirmationDialogYesButton() {
|
||||
Util.waitUntilElementIsVisible(this.confirmationDialogYesButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.confirmationDialogYesButton);
|
||||
this.confirmationDialogYesButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickOnConfirmationDialogNoButton() {
|
||||
Util.waitUntilElementIsVisible(this.confirmationDialogNoButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.confirmationDialogNoButton);
|
||||
this.confirmationDialogNoButton.click();
|
||||
return this;
|
||||
}
|
||||
@@ -173,24 +173,24 @@ export class UploadDialog {
|
||||
}
|
||||
|
||||
minimizeUploadDialog() {
|
||||
Util.waitUntilElementIsVisible(this.minimizeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.minimizeButton);
|
||||
this.minimizeButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
maximizeUploadDialog() {
|
||||
Util.waitUntilElementIsVisible(this.maximizeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.maximizeButton);
|
||||
this.maximizeButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
displayTooltip() {
|
||||
Util.waitUntilElementIsVisible(element(this.errorStatusIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(this.errorStatusIcon));
|
||||
browser.actions().mouseMove(element(this.errorStatusIcon)).perform();
|
||||
}
|
||||
|
||||
getTooltip() {
|
||||
Util.waitUntilElementIsVisible(this.errorTooltip);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorTooltip);
|
||||
return this.errorTooltip.getText();
|
||||
}
|
||||
|
||||
|
@@ -17,8 +17,8 @@
|
||||
|
||||
import { FormControllersPage } from '../material/formControllersPage';
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class UploadToggles {
|
||||
|
||||
@@ -49,25 +49,25 @@ export class UploadToggles {
|
||||
|
||||
checkFolderUploadToggleIsEnabled() {
|
||||
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-folder-upload-switch"][class*="mat-checked"]'));
|
||||
Util.waitUntilElementIsVisible(enabledToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkMultipleFileUploadToggleIsEnabled() {
|
||||
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-multiple-upload-switch"][class*="mat-checked"]'));
|
||||
Util.waitUntilElementIsVisible(enabledToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkMaxSizeToggleIsEnabled() {
|
||||
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-max-size-filter-upload-switch"][class*="mat-checked"]'));
|
||||
Util.waitUntilElementIsVisible(enabledToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkVersioningToggleIsEnabled() {
|
||||
const enabledToggle = element(by.css('mat-slide-toggle[id="adf-version-upload-switch"][class*="mat-checked"]'));
|
||||
Util.waitUntilElementIsVisible(enabledToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(enabledToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -111,7 +111,7 @@ export class UploadToggles {
|
||||
}
|
||||
|
||||
addExtension(extension) {
|
||||
Util.waitUntilElementIsVisible(this.extensionAcceptedField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.extensionAcceptedField);
|
||||
this.extensionAcceptedField.sendKeys(',' + extension);
|
||||
}
|
||||
|
||||
@@ -121,9 +121,9 @@ export class UploadToggles {
|
||||
}
|
||||
|
||||
clearText() {
|
||||
Util.waitUntilElementIsVisible(this.maxSizeField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.maxSizeField);
|
||||
const deferred = protractor.promise.defer();
|
||||
this.maxSizeField.clear().then((value) => {
|
||||
this.maxSizeField.clear().then(() => {
|
||||
this.maxSizeField.sendKeys(protractor.Key.ESCAPE);
|
||||
});
|
||||
return deferred.promise;
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
export class ErrorPage {
|
||||
@@ -27,31 +27,31 @@ export class ErrorPage {
|
||||
secondButton = element(by.id('adf-secondary-button'));
|
||||
|
||||
clickBackButton() {
|
||||
Util.waitUntilElementIsVisible(this.backButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.backButton);
|
||||
this.backButton.click();
|
||||
}
|
||||
|
||||
clickSecondButton() {
|
||||
Util.waitUntilElementIsVisible(this.secondButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.secondButton);
|
||||
this.secondButton.click();
|
||||
}
|
||||
|
||||
checkErrorCode() {
|
||||
Util.waitUntilElementIsVisible(this.errorPageCode);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorPageCode);
|
||||
}
|
||||
|
||||
getErrorCode() {
|
||||
Util.waitUntilElementIsVisible(this.errorPageCode);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorPageCode);
|
||||
return this.errorPageCode.getText();
|
||||
}
|
||||
|
||||
getErrorTitle() {
|
||||
Util.waitUntilElementIsVisible(this.errorPageTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorPageTitle);
|
||||
return this.errorPageTitle.getText();
|
||||
}
|
||||
|
||||
getErrorDescription() {
|
||||
Util.waitUntilElementIsVisible(this.errorPageDescription);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorPageDescription);
|
||||
return this.errorPageDescription.getText();
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class FilePreviewPage {
|
||||
|
||||
@@ -25,19 +25,19 @@ export class FilePreviewPage {
|
||||
closeButton = element(by.css('button[data-automation-id="adf-toolbar-back"]'));
|
||||
|
||||
waitForElements() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`i[id='viewer-close-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`i[id='viewer-close-button']`)));
|
||||
}
|
||||
|
||||
viewFile(fileName) {
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText(`div[data-automation-id="${fileName}"]`, fileName)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText(`div[data-automation-id="${fileName}"]`, fileName)));
|
||||
browser.actions().doubleClick(element(by.cssContainingText(`div[data-automation-id="${fileName}"]`, fileName))).perform();
|
||||
this.waitForElements();
|
||||
}
|
||||
|
||||
getPDFTitleFromSearch() {
|
||||
const deferred = protractor.promise.defer();
|
||||
Util.waitUntilElementIsVisible(this.pdfTitleFromSearch);
|
||||
Util.waitUntilElementIsVisible(this.textLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.pdfTitleFromSearch);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.textLayer);
|
||||
this.pdfTitleFromSearch.getText().then((result) => {
|
||||
deferred.fulfill(result);
|
||||
});
|
||||
@@ -45,36 +45,36 @@ export class FilePreviewPage {
|
||||
}
|
||||
|
||||
checkCloseButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`i[id='viewer-close-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`i[id='viewer-close-button']`)));
|
||||
}
|
||||
|
||||
checkOriginalSizeButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText(`div[id='viewer-scale-page-button'] > i `, `zoom_out_map`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText(`div[id='viewer-scale-page-button'] > i `, `zoom_out_map`)));
|
||||
}
|
||||
|
||||
checkZoomInButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`div[id='viewer-zoom-in-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`div[id='viewer-zoom-in-button']`)));
|
||||
|
||||
}
|
||||
|
||||
checkZoomOutButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`div[id='viewer-zoom-out-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`div[id='viewer-zoom-out-button']`)));
|
||||
}
|
||||
|
||||
checkPreviousPageButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`div[id='viewer-previous-page-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`div[id='viewer-previous-page-button']`)));
|
||||
}
|
||||
|
||||
checkNextPageButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`div[id='viewer-next-page-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`div[id='viewer-next-page-button']`)));
|
||||
}
|
||||
|
||||
checkDownloadButton() {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`button[id='viewer-download-button']`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`button[id='viewer-download-button']`)));
|
||||
}
|
||||
|
||||
checkCurrentPageNumber(pageNumber) {
|
||||
Util.waitUntilElementIsVisible(element(by.css(`input[id='viewer-pagenumber-input'][ng-reflect-value="${pageNumber}"]`)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.css(`input[id='viewer-pagenumber-input'][ng-reflect-value="${pageNumber}"]`)));
|
||||
}
|
||||
|
||||
checkText(pageNumber, text) {
|
||||
@@ -83,35 +83,35 @@ export class FilePreviewPage {
|
||||
const textLayerLoaded = element(by.css(`div[id="pageContainer${pageNumber}"] div[class='textLayer'] > div`));
|
||||
const specificText = element(by.cssContainingText(`div[id="pageContainer${pageNumber}"] div[class='textLayer'] > div`, text));
|
||||
|
||||
Util.waitUntilElementIsVisible(allPages);
|
||||
Util.waitUntilElementIsVisible(pageLoaded);
|
||||
Util.waitUntilElementIsVisible(textLayerLoaded);
|
||||
Util.waitUntilElementIsVisible(specificText);
|
||||
BrowserVisibility.waitUntilElementIsVisible(allPages);
|
||||
BrowserVisibility.waitUntilElementIsVisible(pageLoaded);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textLayerLoaded);
|
||||
BrowserVisibility.waitUntilElementIsVisible(specificText);
|
||||
}
|
||||
|
||||
goToNextPage() {
|
||||
const nextPageIcon = element(by.css(`div[id='viewer-next-page-button']`));
|
||||
Util.waitUntilElementIsVisible(nextPageIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(nextPageIcon);
|
||||
nextPageIcon.click();
|
||||
}
|
||||
|
||||
goToPreviousPage() {
|
||||
const previousPageIcon = element(by.css(`div[id='viewer-previous-page-button']`));
|
||||
Util.waitUntilElementIsVisible(previousPageIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(previousPageIcon);
|
||||
previousPageIcon.click();
|
||||
}
|
||||
|
||||
goToPage(page) {
|
||||
const pageInput = element(by.css(`input[id='viewer-pagenumber-input']`));
|
||||
|
||||
Util.waitUntilElementIsVisible(pageInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(pageInput);
|
||||
pageInput.clear();
|
||||
pageInput.sendKeys(page);
|
||||
pageInput.sendKeys(protractor.Key.ENTER);
|
||||
}
|
||||
|
||||
closePreviewWithButton() {
|
||||
Util.waitUntilElementIsVisible(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.closeButton);
|
||||
this.closeButton.click();
|
||||
}
|
||||
|
||||
@@ -119,35 +119,35 @@ export class FilePreviewPage {
|
||||
const filePreview = element.all(by.css(`div[class='canvasWrapper'] > canvas`)).first();
|
||||
|
||||
browser.actions().sendKeys(protractor.Key.ESCAPE).perform();
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText(`div[data-automation-id="text_${fileName}"]`, fileName)));
|
||||
Util.waitUntilElementIsNotOnPage(filePreview);
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText(`div[data-automation-id="text_${fileName}"]`, fileName)));
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(filePreview);
|
||||
}
|
||||
|
||||
clickDownload(fileName) {
|
||||
const downloadButton = element(by.css(`button[id='viewer-download-button']`));
|
||||
|
||||
Util.waitUntilElementIsVisible(downloadButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(downloadButton);
|
||||
downloadButton.click();
|
||||
}
|
||||
|
||||
clickZoomIn() {
|
||||
const zoomInButton = element(by.css(`div[id='viewer-zoom-in-button']`));
|
||||
|
||||
Util.waitUntilElementIsVisible(zoomInButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(zoomInButton);
|
||||
zoomInButton.click();
|
||||
}
|
||||
|
||||
clickZoomOut() {
|
||||
const zoomOutButton = element(by.css(`div[id='viewer-zoom-out-button']`));
|
||||
|
||||
Util.waitUntilElementIsVisible(zoomOutButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(zoomOutButton);
|
||||
zoomOutButton.click();
|
||||
}
|
||||
|
||||
clickActualSize() {
|
||||
const actualSizeButton = element(by.css(`div[id='viewer-scale-page-button']`));
|
||||
|
||||
Util.waitUntilElementIsVisible(actualSizeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(actualSizeButton);
|
||||
actualSizeButton.click();
|
||||
}
|
||||
|
||||
@@ -167,8 +167,8 @@ export class FilePreviewPage {
|
||||
const canvasLayer = element.all(by.css(`div[class='canvasWrapper'] > canvas`)).first();
|
||||
const textLayer = element(by.css(`div[id*='pageContainer'] div[class='textLayer'] > div`));
|
||||
|
||||
Util.waitUntilElementIsVisible(canvasLayer);
|
||||
Util.waitUntilElementIsVisible(textLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(canvasLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textLayer);
|
||||
|
||||
let actualWidth,
|
||||
zoomedInWidth,
|
||||
@@ -210,8 +210,8 @@ export class FilePreviewPage {
|
||||
const canvasLayer = element.all(by.css(`div[class='canvasWrapper'] > canvas`)).first();
|
||||
const textLayer = element(by.css(`div[id*='pageContainer'] div[class='textLayer'] > div`));
|
||||
|
||||
Util.waitUntilElementIsVisible(canvasLayer);
|
||||
Util.waitUntilElementIsVisible(textLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(canvasLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textLayer);
|
||||
|
||||
let actualWidth,
|
||||
actualHeight,
|
||||
@@ -262,8 +262,8 @@ export class FilePreviewPage {
|
||||
const canvasLayer = element.all(by.css(`div[class='canvasWrapper'] > canvas`)).first();
|
||||
const textLayer = element(by.css(`div[id*='pageContainer'] div[class='textLayer'] > div`));
|
||||
|
||||
Util.waitUntilElementIsVisible(canvasLayer);
|
||||
Util.waitUntilElementIsVisible(textLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(canvasLayer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textLayer);
|
||||
|
||||
let actualWidth;
|
||||
let zoomedOutWidth;
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { element, by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class LockFilePage {
|
||||
|
||||
@@ -27,34 +27,34 @@ export class LockFilePage {
|
||||
allowOwnerCheckbox = element(by.cssContainingText('mat-checkbox[class*="adf-lock-file-name"] span', ' Allow the owner to modify this file '));
|
||||
|
||||
checkLockFileCheckboxIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.lockFileCheckboxText);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.lockFileCheckboxText);
|
||||
}
|
||||
|
||||
checkCancelButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.cancelButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.cancelButton);
|
||||
}
|
||||
|
||||
checkSaveButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.saveButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
}
|
||||
|
||||
clickCancelButton() {
|
||||
Util.waitUntilElementIsClickable(this.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.cancelButton);
|
||||
return this.cancelButton.click();
|
||||
}
|
||||
|
||||
clickLockFileCheckbox() {
|
||||
Util.waitUntilElementIsClickable(this.lockFileCheckbox);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.lockFileCheckbox);
|
||||
return this.lockFileCheckbox.click();
|
||||
}
|
||||
|
||||
clickSaveButton() {
|
||||
Util.waitUntilElementIsClickable(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.saveButton);
|
||||
return this.saveButton.click();
|
||||
}
|
||||
|
||||
clickAllowOwnerCheckbox() {
|
||||
Util.waitUntilElementIsClickable(this.allowOwnerCheckbox);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.allowOwnerCheckbox);
|
||||
return this.allowOwnerCheckbox.click();
|
||||
}
|
||||
}
|
||||
|
@@ -17,10 +17,10 @@
|
||||
|
||||
import { FormControllersPage } from './material/formControllersPage';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { SettingsPage } from './settingsPage';
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import TestConfig = require('../../test.config');
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class LoginPage {
|
||||
|
||||
@@ -53,26 +53,26 @@ export class LoginPage {
|
||||
settingsIcon = element(by.cssContainingText('a[data-automation-id="settings"] mat-icon', 'settings'));
|
||||
|
||||
waitForElements() {
|
||||
Util.waitUntilElementIsVisible(this.txtUsername);
|
||||
Util.waitUntilElementIsVisible(this.txtPassword);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtUsername);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtPassword);
|
||||
return this;
|
||||
}
|
||||
|
||||
enterUsername(username) {
|
||||
Util.waitUntilElementIsVisible(this.txtUsername);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtUsername);
|
||||
this.txtUsername.sendKeys('');
|
||||
this.txtUsername.clear();
|
||||
return this.txtUsername.sendKeys(username);
|
||||
}
|
||||
|
||||
enterPassword(password) {
|
||||
Util.waitUntilElementIsVisible(this.txtPassword);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtPassword);
|
||||
this.txtPassword.clear();
|
||||
return this.txtPassword.sendKeys(password);
|
||||
}
|
||||
|
||||
clearUsername() {
|
||||
Util.waitUntilElementIsVisible(this.txtUsername);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtUsername);
|
||||
this.txtUsername.click();
|
||||
this.txtUsername.getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
@@ -83,7 +83,7 @@ export class LoginPage {
|
||||
}
|
||||
|
||||
clearPassword() {
|
||||
Util.waitUntilElementIsVisible(this.txtPassword);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtPassword);
|
||||
this.txtPassword.getAttribute('value').then((value) => {
|
||||
for (let i = value.length; i >= 0; i--) {
|
||||
this.txtPassword.sendKeys(protractor.Key.BACK_SPACE);
|
||||
@@ -92,53 +92,53 @@ export class LoginPage {
|
||||
}
|
||||
|
||||
getUsernameTooltip() {
|
||||
Util.waitUntilElementIsVisible(this.usernameTooltip);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.usernameTooltip);
|
||||
return this.usernameTooltip.getText();
|
||||
}
|
||||
|
||||
getPasswordTooltip() {
|
||||
Util.waitUntilElementIsVisible(this.passwordTooltip);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.passwordTooltip);
|
||||
return this.passwordTooltip.getText();
|
||||
}
|
||||
|
||||
getLoginError() {
|
||||
Util.waitUntilElementIsVisible(this.loginTooltip);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.loginTooltip);
|
||||
return this.loginTooltip.getText();
|
||||
}
|
||||
|
||||
checkLoginImgURL(url) {
|
||||
Util.waitUntilElementIsVisible(this.logoImg);
|
||||
checkLoginImgURL() {
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.logoImg);
|
||||
return this.logoImg.getAttribute('src');
|
||||
}
|
||||
|
||||
checkUsernameInactive() {
|
||||
Util.waitUntilElementIsVisible(this.usernameInactive);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.usernameInactive);
|
||||
}
|
||||
|
||||
checkPasswordInactive() {
|
||||
Util.waitUntilElementIsVisible(this.passwordInactive);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.passwordInactive);
|
||||
}
|
||||
|
||||
checkUsernameHighlighted() {
|
||||
this.adfLogo.click();
|
||||
Util.waitUntilElementIsVisible(this.usernameHighlighted);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.usernameHighlighted);
|
||||
}
|
||||
|
||||
checkPasswordHighlighted() {
|
||||
this.adfLogo.click();
|
||||
Util.waitUntilElementIsVisible(this.passwordHighlighted);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.passwordHighlighted);
|
||||
}
|
||||
|
||||
checkUsernameTooltipIsNotVisible() {
|
||||
Util.waitUntilElementIsNotVisible(this.usernameTooltip);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.usernameTooltip);
|
||||
}
|
||||
|
||||
checkPasswordTooltipIsNotVisible() {
|
||||
Util.waitUntilElementIsNotVisible(this.passwordTooltip);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.passwordTooltip);
|
||||
}
|
||||
|
||||
getSignInButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.signInButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.signInButton);
|
||||
return this.signInButton.isEnabled();
|
||||
}
|
||||
|
||||
@@ -168,22 +168,22 @@ export class LoginPage {
|
||||
}
|
||||
|
||||
clickSignInButton() {
|
||||
Util.waitUntilElementIsVisible(this.signInButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.signInButton);
|
||||
this.signInButton.click();
|
||||
}
|
||||
|
||||
clickSettingsIcon() {
|
||||
Util.waitUntilElementIsVisible(this.settingsIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.settingsIcon);
|
||||
this.settingsIcon.click();
|
||||
}
|
||||
|
||||
showPassword() {
|
||||
Util.waitUntilElementIsVisible(this.showPasswordElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.showPasswordElement);
|
||||
this.showPasswordElement.click();
|
||||
}
|
||||
|
||||
hidePassword() {
|
||||
Util.waitUntilElementIsVisible(this.hidePasswordElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.hidePasswordElement);
|
||||
this.hidePasswordElement.click();
|
||||
}
|
||||
|
||||
@@ -192,31 +192,31 @@ export class LoginPage {
|
||||
}
|
||||
|
||||
checkPasswordIsHidden() {
|
||||
Util.waitUntilElementIsVisible(this.txtPassword);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.txtPassword);
|
||||
}
|
||||
|
||||
checkRememberIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.rememberMe);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.rememberMe);
|
||||
}
|
||||
|
||||
checkRememberIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.rememberMe);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.rememberMe);
|
||||
}
|
||||
|
||||
checkNeedHelpIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.needHelp);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.needHelp);
|
||||
}
|
||||
|
||||
checkNeedHelpIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.needHelp);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.needHelp);
|
||||
}
|
||||
|
||||
checkRegisterDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.register);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.register);
|
||||
}
|
||||
|
||||
checkRegisterIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.register);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.register);
|
||||
}
|
||||
|
||||
enableFooter() {
|
||||
@@ -240,14 +240,14 @@ export class LoginPage {
|
||||
}
|
||||
|
||||
enterSuccessRoute(route) {
|
||||
Util.waitUntilElementIsVisible(this.successRouteTxt);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.successRouteTxt);
|
||||
this.successRouteTxt.sendKeys('');
|
||||
this.successRouteTxt.clear();
|
||||
return this.successRouteTxt.sendKeys(route);
|
||||
}
|
||||
|
||||
enterLogo(logo) {
|
||||
Util.waitUntilElementIsVisible(this.logoTxt);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.logoTxt);
|
||||
this.logoTxt.sendKeys('');
|
||||
this.logoTxt.clear();
|
||||
return this.logoTxt.sendKeys(logo);
|
||||
@@ -258,6 +258,6 @@ export class LoginPage {
|
||||
this.enterUsername(username);
|
||||
this.enterPassword(password);
|
||||
this.clickSignInButton();
|
||||
return Util.waitUntilElementIsVisible(this.header);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.header);
|
||||
}
|
||||
}
|
||||
|
@@ -15,9 +15,9 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { element, by, browser, protractor } from 'protractor';
|
||||
import { DateUtil } from '../../../util/dateUtil';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class DatePickerPage {
|
||||
|
||||
@@ -56,7 +56,7 @@ export class DatePickerPage {
|
||||
selectTodayDate() {
|
||||
this.checkDatePickerIsDisplayed();
|
||||
const todayDate = element(by.css('.mat-calendar-body-today'));
|
||||
Util.waitUntilElementIsClickable(todayDate);
|
||||
BrowserVisibility.waitUntilElementIsClickable(todayDate);
|
||||
todayDate.click();
|
||||
return this;
|
||||
}
|
||||
@@ -69,12 +69,12 @@ export class DatePickerPage {
|
||||
}
|
||||
|
||||
checkDatePickerIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.datePicker);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.datePicker);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkDatePickerIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.datePicker);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.datePicker);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -15,26 +15,26 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class FormControllersPage {
|
||||
|
||||
enableToggle(toggle) {
|
||||
Util.waitUntilElementIsVisible(toggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(toggle);
|
||||
toggle.getAttribute('class').then((check) => {
|
||||
if (check.indexOf('mat-checked') < 0) {
|
||||
Util.waitUntilElementIsClickable(toggle.all(by.css('div')).first());
|
||||
BrowserVisibility.waitUntilElementIsClickable(toggle.all(by.css('div')).first());
|
||||
toggle.all(by.css('div')).first().click();
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
disableToggle(toggle) {
|
||||
Util.waitUntilElementIsVisible(toggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(toggle);
|
||||
toggle.getAttribute('class').then((check) => {
|
||||
if (check.indexOf('mat-checked') >= 0) {
|
||||
Util.waitUntilElementIsClickable(toggle.all(by.css('div')).first());
|
||||
BrowserVisibility.waitUntilElementIsClickable(toggle.all(by.css('div')).first());
|
||||
toggle.all(by.css('div')).first().click();
|
||||
}
|
||||
});
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { browser, by, element, promise } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class MetadataViewPage {
|
||||
|
||||
@@ -46,85 +46,85 @@ export class MetadataViewPage {
|
||||
closeButton = element(by.cssContainingText('button.mat-button span', 'Close'));
|
||||
|
||||
getTitle(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.title);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.title);
|
||||
return this.title.getText();
|
||||
}
|
||||
|
||||
getExpandedAspectName(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.expandedAspect);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.expandedAspect);
|
||||
return this.expandedAspect.element(this.aspectTitle).getText();
|
||||
}
|
||||
|
||||
getName(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.name);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.name);
|
||||
return this.name.getText();
|
||||
}
|
||||
|
||||
getCreator(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.creator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.creator);
|
||||
return this.creator.getText();
|
||||
}
|
||||
|
||||
getCreatedDate(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.createdDate);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.createdDate);
|
||||
return this.createdDate.getText();
|
||||
}
|
||||
|
||||
getModifier(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.modifier);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.modifier);
|
||||
return this.modifier.getText();
|
||||
}
|
||||
|
||||
getModifiedDate(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.modifiedDate);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.modifiedDate);
|
||||
return this.modifiedDate.getText();
|
||||
}
|
||||
|
||||
getMimetypeName(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.mimetypeName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.mimetypeName);
|
||||
return this.mimetypeName.getText();
|
||||
}
|
||||
|
||||
getSize(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.size);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.size);
|
||||
return this.size.getText();
|
||||
}
|
||||
|
||||
getDescription(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.description);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.description);
|
||||
return this.description.getText();
|
||||
}
|
||||
|
||||
getAuthor(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.author);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.author);
|
||||
return this.author.getText();
|
||||
}
|
||||
|
||||
getTitleProperty(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.titleProperty);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.titleProperty);
|
||||
return this.titleProperty.getText();
|
||||
}
|
||||
|
||||
editIconIsDisplayed(): promise.Promise<boolean> {
|
||||
return Util.waitUntilElementIsVisible(this.editIcon);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.editIcon);
|
||||
}
|
||||
|
||||
editIconIsNotDisplayed(): promise.Promise<any> {
|
||||
return Util.waitUntilElementIsNotVisible(this.editIcon);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(this.editIcon);
|
||||
}
|
||||
|
||||
editIconClick(): promise.Promise<void> {
|
||||
Util.waitUntilElementIsVisible(this.editIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.editIcon);
|
||||
return this.editIcon.click();
|
||||
}
|
||||
|
||||
informationButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.informationButton);
|
||||
Util.waitUntilElementIsClickable(this.informationButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.informationButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.informationButton);
|
||||
}
|
||||
|
||||
informationButtonIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.informationButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.informationButton);
|
||||
}
|
||||
|
||||
clickOnInformationButton(): MetadataViewPage {
|
||||
@@ -135,24 +135,24 @@ export class MetadataViewPage {
|
||||
}
|
||||
|
||||
getInformationButtonText(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.informationSpan);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.informationSpan);
|
||||
return this.informationSpan.getText();
|
||||
}
|
||||
|
||||
getInformationIconText(): promise.Promise<string> {
|
||||
Util.waitUntilElementIsVisible(this.informationIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.informationIcon);
|
||||
return this.informationIcon.getText();
|
||||
}
|
||||
|
||||
clickOnPropertiesTab(): MetadataViewPage {
|
||||
const propertiesTab = element(by.cssContainingText(`.adf-info-drawer-layout-content div.mat-tab-labels div .mat-tab-label-content`, `Properties`));
|
||||
Util.waitUntilElementIsVisible(propertiesTab);
|
||||
BrowserVisibility.waitUntilElementIsVisible(propertiesTab);
|
||||
propertiesTab.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickRightChevron(): MetadataViewPage {
|
||||
Util.waitUntilElementIsVisible(this.rightChevron);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.rightChevron);
|
||||
this.rightChevron.click();
|
||||
return this;
|
||||
}
|
||||
@@ -167,29 +167,29 @@ export class MetadataViewPage {
|
||||
|
||||
editPropertyIconIsDisplayed(propertyName: string) {
|
||||
const editPropertyIcon = element(by.css('mat-icon[data-automation-id="card-textitem-edit-icon-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(editPropertyIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(editPropertyIcon);
|
||||
}
|
||||
|
||||
updatePropertyIconIsDisplayed(propertyName: string) {
|
||||
const updatePropertyIcon = element(by.css('mat-icon[data-automation-id="card-textitem-update-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(updatePropertyIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(updatePropertyIcon);
|
||||
}
|
||||
|
||||
clickUpdatePropertyIcon(propertyName: string): promise.Promise<void> {
|
||||
const updatePropertyIcon = element(by.css('mat-icon[data-automation-id="card-textitem-update-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(updatePropertyIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(updatePropertyIcon);
|
||||
return updatePropertyIcon.click();
|
||||
}
|
||||
|
||||
clickClearPropertyIcon(propertyName: string): promise.Promise<void> {
|
||||
const clearPropertyIcon = element(by.css('mat-icon[data-automation-id="card-textitem-reset-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(clearPropertyIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(clearPropertyIcon);
|
||||
return clearPropertyIcon.click();
|
||||
}
|
||||
|
||||
enterPropertyText(propertyName: string, text: string | number): MetadataViewPage {
|
||||
const textField = element(by.css('input[data-automation-id="card-textitem-editinput-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
textField.sendKeys('');
|
||||
textField.clear();
|
||||
textField.sendKeys(text);
|
||||
@@ -198,7 +198,7 @@ export class MetadataViewPage {
|
||||
|
||||
enterPresetText(text: string): MetadataViewPage {
|
||||
const presetField = element(by.css('input[data-automation-id="adf-text-custom-preset"]'));
|
||||
Util.waitUntilElementIsVisible(presetField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(presetField);
|
||||
presetField.sendKeys('');
|
||||
presetField.clear();
|
||||
presetField.sendKeys(text);
|
||||
@@ -209,7 +209,7 @@ export class MetadataViewPage {
|
||||
|
||||
enterDescriptionText(text: string): MetadataViewPage {
|
||||
const textField = element(by.css('textarea[data-automation-id="card-textitem-edittextarea-properties.cm:description"]'));
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
textField.sendKeys('');
|
||||
textField.clear();
|
||||
textField.sendKeys(text);
|
||||
@@ -220,18 +220,18 @@ export class MetadataViewPage {
|
||||
const propertyType = type || 'textitem';
|
||||
const textField = element(by.css('span[data-automation-id="card-' + propertyType + '-value-' + propertyName + '"]'));
|
||||
|
||||
Util.waitUntilElementIsVisible(textField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(textField);
|
||||
return textField.getText();
|
||||
}
|
||||
|
||||
clearPropertyIconIsDisplayed(propertyName: string) {
|
||||
const clearPropertyIcon = element(by.css('mat-icon[data-automation-id="card-textitem-reset-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(clearPropertyIcon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(clearPropertyIcon);
|
||||
}
|
||||
|
||||
clickEditPropertyIcons(propertyName: string) {
|
||||
const editPropertyIcon = element(by.css('mat-icon[data-automation-id="card-textitem-edit-icon-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsClickable(editPropertyIcon);
|
||||
BrowserVisibility.waitUntilElementIsClickable(editPropertyIcon);
|
||||
editPropertyIcon.click();
|
||||
}
|
||||
|
||||
@@ -242,50 +242,50 @@ export class MetadataViewPage {
|
||||
|
||||
clickMetadataGroup(groupName: string) {
|
||||
const group = element(by.css('mat-expansion-panel[data-automation-id="adf-metadata-group-' + groupName + '"]'));
|
||||
Util.waitUntilElementIsVisible(group);
|
||||
BrowserVisibility.waitUntilElementIsVisible(group);
|
||||
group.click();
|
||||
}
|
||||
|
||||
checkMetadataGroupIsPresent(groupName: string): promise.Promise<boolean> {
|
||||
const group = element(by.css('mat-expansion-panel[data-automation-id="adf-metadata-group-' + groupName + '"]'));
|
||||
return Util.waitUntilElementIsVisible(group);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(group);
|
||||
}
|
||||
|
||||
checkMetadataGroupIsNotPresent(groupName: string): promise.Promise<any> {
|
||||
const group = element(by.css('mat-expansion-panel[data-automation-id="adf-metadata-group-' + groupName + '"]'));
|
||||
return Util.waitUntilElementIsNotVisible(group);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(group);
|
||||
}
|
||||
|
||||
checkMetadataGroupIsExpand(groupName: string) {
|
||||
const group = element(by.css('mat-expansion-panel[data-automation-id="adf-metadata-group-' + groupName + '"] > mat-expansion-panel-header'));
|
||||
Util.waitUntilElementIsVisible(group);
|
||||
BrowserVisibility.waitUntilElementIsVisible(group);
|
||||
expect(group.getAttribute('class')).toContain('mat-expanded');
|
||||
}
|
||||
|
||||
checkMetadataGroupIsNotExpand(groupName: string) {
|
||||
const group = element(by.css('mat-expansion-panel[data-automation-id="adf-metadata-group-' + groupName + '"] > mat-expansion-panel-header'));
|
||||
Util.waitUntilElementIsVisible(group);
|
||||
BrowserVisibility.waitUntilElementIsVisible(group);
|
||||
expect(group.getAttribute('class')).not.toContain('mat-expanded');
|
||||
}
|
||||
|
||||
getMetadataGroupTitle(groupName: string): promise.Promise<string> {
|
||||
const group = element(by.css('mat-expansion-panel[data-automation-id="adf-metadata-group-' + groupName + '"] > mat-expansion-panel-header > span > mat-panel-title'));
|
||||
Util.waitUntilElementIsVisible(group);
|
||||
BrowserVisibility.waitUntilElementIsVisible(group);
|
||||
return group.getText();
|
||||
}
|
||||
|
||||
checkPropertyIsVisible(propertyName: string, type: string) {
|
||||
const property = element(by.css('div[data-automation-id="card-' + type + '-label-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsVisible(property);
|
||||
BrowserVisibility.waitUntilElementIsVisible(property);
|
||||
}
|
||||
|
||||
checkPropertyIsNotVisible(propertyName: string, type: string) {
|
||||
const property = element(by.css('div[data-automation-id="card-' + type + '-label-' + propertyName + '"]'));
|
||||
Util.waitUntilElementIsNotVisible(property);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(property);
|
||||
}
|
||||
|
||||
clickCloseButton() {
|
||||
Util.waitUntilElementIsVisible(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.closeButton);
|
||||
this.closeButton.click();
|
||||
}
|
||||
}
|
||||
|
@@ -15,12 +15,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { browser, by, element } from 'protractor';
|
||||
import { ProcessServicesPage } from './process-services/processServicesPage';
|
||||
import { AppListCloudPage } from '@alfresco/adf-testing';
|
||||
import TestConfig = require('../../test.config');
|
||||
import { PeopleGroupCloudComponentPage } from './demo-shell/process-services/peopleGroupCloudComponentPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class NavigationBarPage {
|
||||
|
||||
@@ -54,91 +54,91 @@ export class NavigationBarPage {
|
||||
aboutButton = element(by.css('a[data-automation-id="About"]'));
|
||||
|
||||
navigateToDatatable() {
|
||||
Util.waitUntilElementIsVisible(this.dataTableButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dataTableButton);
|
||||
this.dataTableButton.click();
|
||||
Util.waitUntilElementIsVisible(this.dataTableNestedButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dataTableNestedButton);
|
||||
this.dataTableNestedButton.click();
|
||||
}
|
||||
|
||||
clickContentServicesButton() {
|
||||
Util.waitUntilElementIsVisible(this.contentServicesButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.contentServicesButton);
|
||||
this.contentServicesButton.click();
|
||||
}
|
||||
|
||||
clickTaskListButton() {
|
||||
Util.waitUntilElementIsVisible(this.taskListButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskListButton);
|
||||
this.taskListButton.click();
|
||||
}
|
||||
|
||||
clickConfigEditorButton() {
|
||||
Util.waitUntilElementIsVisible(this.configEditorButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.configEditorButton);
|
||||
this.configEditorButton.click();
|
||||
}
|
||||
|
||||
navigateToProcessServicesPage() {
|
||||
Util.waitUntilElementIsVisible(this.processServicesButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processServicesButton);
|
||||
this.processServicesButton.click();
|
||||
Util.waitUntilElementIsVisible(this.processServicesNestedButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processServicesNestedButton);
|
||||
this.processServicesNestedButton.click();
|
||||
return new ProcessServicesPage();
|
||||
}
|
||||
|
||||
navigateToProcessServicesCloudPage() {
|
||||
Util.waitUntilElementIsVisible(this.processServicesCloudButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processServicesCloudButton);
|
||||
this.processServicesCloudButton.click();
|
||||
Util.waitUntilElementIsVisible(this.processServicesCloudHomeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processServicesCloudHomeButton);
|
||||
this.processServicesCloudHomeButton.click();
|
||||
return new AppListCloudPage();
|
||||
}
|
||||
|
||||
navigateToPeopleGroupCloudPage() {
|
||||
Util.waitUntilElementIsVisible(this.peopleGroupCloud);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleGroupCloud);
|
||||
this.peopleGroupCloud.click();
|
||||
return new PeopleGroupCloudComponentPage();
|
||||
}
|
||||
|
||||
navigateToSettingsPage() {
|
||||
Util.waitUntilElementIsVisible(this.settingsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.settingsButton);
|
||||
this.settingsButton.click();
|
||||
return new AppListCloudPage();
|
||||
}
|
||||
|
||||
clickLoginButton() {
|
||||
Util.waitUntilElementIsVisible(this.loginButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.loginButton);
|
||||
this.loginButton.click();
|
||||
}
|
||||
|
||||
clickTrashcanButton() {
|
||||
Util.waitUntilElementIsVisible(this.trashcanButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.trashcanButton);
|
||||
this.trashcanButton.click();
|
||||
}
|
||||
|
||||
clickOverlayViewerButton() {
|
||||
Util.waitUntilElementIsVisible(this.overlayViewerButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.overlayViewerButton);
|
||||
this.overlayViewerButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickThemeButton() {
|
||||
Util.waitUntilElementIsVisible(this.themeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.themeButton);
|
||||
this.themeButton.click();
|
||||
Util.waitUntilElementIsVisible(this.themeMenuContent);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.themeMenuContent);
|
||||
}
|
||||
|
||||
clickOnSpecificThemeButton(themeName) {
|
||||
const themeElement = element(by.css(`button[data-automation-id="${themeName}"]`));
|
||||
Util.waitUntilElementIsVisible(themeElement);
|
||||
Util.waitUntilElementIsClickable(themeElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(themeElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(themeElement);
|
||||
themeElement.click();
|
||||
}
|
||||
|
||||
clickLogoutButton() {
|
||||
Util.waitUntilElementIsVisible(this.logoutButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.logoutButton);
|
||||
this.logoutButton.click();
|
||||
}
|
||||
|
||||
clickCardViewButton() {
|
||||
Util.waitUntilElementIsVisible(this.cardViewButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cardViewButton);
|
||||
this.cardViewButton.click();
|
||||
}
|
||||
|
||||
@@ -148,65 +148,65 @@ export class NavigationBarPage {
|
||||
|
||||
chooseLanguage(language) {
|
||||
const buttonLanguage = element(by.xpath(`//adf-language-menu//button[contains(text(), '${language}')]`));
|
||||
Util.waitUntilElementIsVisible(buttonLanguage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(buttonLanguage);
|
||||
buttonLanguage.click();
|
||||
}
|
||||
|
||||
openLanguageMenu() {
|
||||
Util.waitUntilElementIsVisible(this.languageMenuButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.languageMenuButton);
|
||||
this.languageMenuButton.click();
|
||||
Util.waitUntilElementIsVisible(this.appTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appTitle);
|
||||
}
|
||||
|
||||
clickHeaderDataButton() {
|
||||
Util.waitUntilElementIsVisible(this.headerDataButton);
|
||||
Util.waitUntilElementIsClickable(this.headerDataButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.headerDataButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.headerDataButton);
|
||||
return this.headerDataButton.click();
|
||||
}
|
||||
|
||||
clickAboutButton() {
|
||||
Util.waitUntilElementIsClickable(this.aboutButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.aboutButton);
|
||||
return this.aboutButton.click();
|
||||
}
|
||||
|
||||
checkAboutButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.aboutButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.aboutButton);
|
||||
}
|
||||
|
||||
checkMenuButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.menuButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.menuButton);
|
||||
}
|
||||
|
||||
checkMenuButtonIsNotDisplayed() {
|
||||
return Util.waitUntilElementIsNotVisible(this.menuButton);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(this.menuButton);
|
||||
}
|
||||
|
||||
checkToolbarColor(color) {
|
||||
const toolbarColor = element(by.css(`mat-toolbar[class*="mat-${color}"]`));
|
||||
return Util.waitUntilElementIsVisible(toolbarColor);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(toolbarColor);
|
||||
}
|
||||
|
||||
clickAppLogo(logoTitle) {
|
||||
const appLogo = element(by.css('a[title="' + logoTitle + '"]'));
|
||||
Util.waitUntilElementIsVisible(appLogo);
|
||||
BrowserVisibility.waitUntilElementIsVisible(appLogo);
|
||||
appLogo.click();
|
||||
}
|
||||
|
||||
clickAppLogoText() {
|
||||
Util.waitUntilElementIsVisible(this.appTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.appTitle);
|
||||
this.appTitle.click();
|
||||
}
|
||||
|
||||
clickFormButton() {
|
||||
Util.waitUntilElementIsVisible(this.processServicesButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processServicesButton);
|
||||
this.processServicesButton.click();
|
||||
Util.waitUntilElementIsVisible(this.formButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.formButton);
|
||||
return this.formButton.click();
|
||||
}
|
||||
|
||||
checkLogoTooltip(logoTooltipTitle) {
|
||||
const logoTooltip = element(by.css('a[title="' + logoTooltipTitle + '"]'));
|
||||
Util.waitUntilElementIsVisible(logoTooltip);
|
||||
BrowserVisibility.waitUntilElementIsVisible(logoTooltip);
|
||||
}
|
||||
|
||||
openViewer(nodeId) {
|
||||
@@ -219,17 +219,17 @@ export class NavigationBarPage {
|
||||
}
|
||||
|
||||
clickTreeViewButton() {
|
||||
Util.waitUntilElementIsVisible(this.treeViewButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.treeViewButton);
|
||||
this.treeViewButton.click();
|
||||
}
|
||||
|
||||
navigateToIconsPage() {
|
||||
Util.waitUntilElementIsVisible(this.iconsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.iconsButton);
|
||||
this.iconsButton.click();
|
||||
}
|
||||
|
||||
navigateToCustomSources() {
|
||||
Util.waitUntilElementIsVisible(this.customSourcesButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.customSourcesButton);
|
||||
this.customSourcesButton.click();
|
||||
}
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { element, by, protractor, browser, until } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class NotificationPage {
|
||||
|
||||
@@ -34,44 +34,44 @@ export class NotificationPage {
|
||||
notificationConfig = element(by.css('p[data-automation-id="notification-custom-object"]'));
|
||||
|
||||
checkNotifyContains(message) {
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText('simple-snack-bar', message)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText('simple-snack-bar', message)));
|
||||
return this;
|
||||
}
|
||||
|
||||
goToNotificationsPage() {
|
||||
Util.waitUntilElementIsVisible(this.notificationsPage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.notificationsPage);
|
||||
this.notificationsPage.click();
|
||||
}
|
||||
|
||||
getConfigObject() {
|
||||
Util.waitUntilElementIsVisible(this.notificationConfig);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.notificationConfig);
|
||||
return this.notificationConfig.getText();
|
||||
}
|
||||
|
||||
checkNotificationSnackBarIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.notificationSnackBar);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.notificationSnackBar);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkNotificationSnackBarIsDisplayedWithMessage(message) {
|
||||
const notificationSnackBarMessage = element(by.cssContainingText('simple-snack-bar', message));
|
||||
Util.waitUntilElementIsVisible(notificationSnackBarMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(notificationSnackBarMessage);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkNotificationSnackBarIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.notificationSnackBar);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.notificationSnackBar);
|
||||
return this;
|
||||
}
|
||||
|
||||
enterMessageField(text) {
|
||||
Util.waitUntilElementIsVisible(this.messageField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.messageField);
|
||||
this.messageField.clear();
|
||||
this.messageField.sendKeys(text);
|
||||
}
|
||||
|
||||
enterDurationField(time) {
|
||||
Util.waitUntilElementIsVisible(this.durationField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.durationField);
|
||||
this.durationField.clear();
|
||||
this.durationField.sendKeys(time);
|
||||
}
|
||||
@@ -79,38 +79,38 @@ export class NotificationPage {
|
||||
selectHorizontalPosition(selectedItem) {
|
||||
const selectItem = element(by.cssContainingText('span[class="mat-option-text"]', selectedItem));
|
||||
this.horizontalPosition.click();
|
||||
Util.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
selectItem.click();
|
||||
}
|
||||
|
||||
selectVerticalPosition(selectedItem) {
|
||||
const selectItem = element(by.cssContainingText('span[class="mat-option-text"]', selectedItem));
|
||||
this.verticalPosition.click();
|
||||
Util.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
selectItem.click();
|
||||
}
|
||||
|
||||
selectDirection(selectedItem) {
|
||||
const selectItem = element(by.cssContainingText('span[class="mat-option-text"]', selectedItem));
|
||||
this.direction.click();
|
||||
Util.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectionDropDown);
|
||||
selectItem.click();
|
||||
}
|
||||
|
||||
clickNotificationButton() {
|
||||
// Util.waitUntilElementIsVisible(this.customNotificationButton);
|
||||
// BrowserVisibility.waitUntilElementIsVisible(this.customNotificationButton);
|
||||
// this.customNotificationButton.click();
|
||||
const button = browser.wait(until.elementLocated(by.css('button[data-automation-id="notification-custom-config-button"]')));
|
||||
button.click();
|
||||
}
|
||||
|
||||
checkActionEvent() {
|
||||
Util.waitUntilElementIsVisible(this.actionOutput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.actionOutput);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickActionToggle() {
|
||||
Util.waitUntilElementIsVisible(this.actionToggle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.actionToggle);
|
||||
this.actionToggle.click();
|
||||
}
|
||||
|
||||
@@ -119,7 +119,7 @@ export class NotificationPage {
|
||||
}
|
||||
|
||||
clearMessage() {
|
||||
Util.waitUntilElementIsVisible(this.messageField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.messageField);
|
||||
this.messageField.clear();
|
||||
this.messageField.sendKeys('a');
|
||||
this.messageField.sendKeys(protractor.Key.BACK_SPACE);
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { browser, by, element, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class PaginationPage {
|
||||
|
||||
@@ -37,81 +37,81 @@ export class PaginationPage {
|
||||
totalFiles = element(by.css('span[class="adf-pagination__range"]'));
|
||||
|
||||
selectItemsPerPage(numberOfItem: string) {
|
||||
Util.waitUntilElementIsVisible(this.itemsPerPageDropdown);
|
||||
Util.waitUntilElementIsClickable(this.itemsPerPageDropdown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.itemsPerPageDropdown);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.itemsPerPageDropdown);
|
||||
browser.actions().mouseMove(this.itemsPerPageDropdown).perform();
|
||||
Util.waitUntilElementIsVisible(this.itemsPerPageDropdown);
|
||||
Util.waitUntilElementIsClickable(this.itemsPerPageDropdown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.itemsPerPageDropdown);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.itemsPerPageDropdown);
|
||||
this.itemsPerPageDropdown.click();
|
||||
Util.waitUntilElementIsVisible(this.pageSelectorDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.pageSelectorDropDown);
|
||||
|
||||
const itemsPerPage = element.all(by.cssContainingText('.mat-menu-item', numberOfItem)).first();
|
||||
Util.waitUntilElementIsClickable(itemsPerPage);
|
||||
Util.waitUntilElementIsVisible(itemsPerPage);
|
||||
BrowserVisibility.waitUntilElementIsClickable(itemsPerPage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(itemsPerPage);
|
||||
itemsPerPage.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkPageSelectorIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotOnPage(this.pageSelectorArrow);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.pageSelectorArrow);
|
||||
}
|
||||
|
||||
checkPageSelectorIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.pageSelectorArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.pageSelectorArrow);
|
||||
}
|
||||
|
||||
checkPaginationIsNotDisplayed() {
|
||||
Util.waitUntilElementIsOnPage(this.paginationSectionEmpty);
|
||||
BrowserVisibility.waitUntilElementIsOnPage(this.paginationSectionEmpty);
|
||||
return this;
|
||||
}
|
||||
|
||||
getCurrentItemsPerPage() {
|
||||
Util.waitUntilElementIsVisible(this.itemsPerPage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.itemsPerPage);
|
||||
return this.itemsPerPage.getText();
|
||||
}
|
||||
|
||||
getCurrentPage() {
|
||||
Util.waitUntilElementIsVisible(this.paginationSection);
|
||||
Util.waitUntilElementIsVisible(this.currentPage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.paginationSection);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.currentPage);
|
||||
return this.currentPage.getText();
|
||||
}
|
||||
|
||||
getTotalPages() {
|
||||
Util.waitUntilElementIsVisible(this.totalPages);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.totalPages);
|
||||
return this.totalPages.getText();
|
||||
}
|
||||
|
||||
getPaginationRange() {
|
||||
Util.waitUntilElementIsVisible(this.paginationRange);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.paginationRange);
|
||||
return this.paginationRange.getText();
|
||||
}
|
||||
|
||||
clickOnNextPage() {
|
||||
Util.waitUntilElementIsVisible(this.nextPageButton);
|
||||
Util.waitUntilElementIsClickable(this.nextPageButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nextPageButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.nextPageButton);
|
||||
browser.actions().mouseMove(this.nextPageButton).perform();
|
||||
Util.waitUntilElementIsVisible(this.nextPageButton);
|
||||
Util.waitUntilElementIsClickable(this.nextPageButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nextPageButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.nextPageButton);
|
||||
return this.nextPageButton.click();
|
||||
}
|
||||
|
||||
clickOnPageDropdown() {
|
||||
Util.waitUntilElementIsVisible(this.pageDropDown);
|
||||
Util.waitUntilElementIsClickable(this.pageDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.pageDropDown);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.pageDropDown);
|
||||
return this.pageDropDown.click();
|
||||
}
|
||||
|
||||
clickOnPageDropdownOption(numberOfItemPerPage: string) {
|
||||
Util.waitUntilElementIsVisible(element.all(this.pageDropDownOptions).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(this.pageDropDownOptions).first());
|
||||
const option = element(by.cssContainingText('div[class*="mat-menu-content"] button', numberOfItemPerPage));
|
||||
Util.waitUntilElementIsVisible(option);
|
||||
BrowserVisibility.waitUntilElementIsVisible(option);
|
||||
option.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getPageDropdownOptions() {
|
||||
const deferred = protractor.promise.defer();
|
||||
Util.waitUntilElementIsVisible(element.all(this.pageDropDownOptions).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(this.pageDropDownOptions).first());
|
||||
const initialList = [];
|
||||
element.all(this.pageDropDownOptions).each(function (currentOption) {
|
||||
currentOption.getText().then(function (text) {
|
||||
@@ -126,23 +126,23 @@ export class PaginationPage {
|
||||
}
|
||||
|
||||
checkNextPageButtonIsDisabled() {
|
||||
Util.waitUntilElementIsVisible(this.nextButtonDisabled);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nextButtonDisabled);
|
||||
}
|
||||
|
||||
checkPreviousPageButtonIsDisabled() {
|
||||
Util.waitUntilElementIsVisible(this.previousButtonDisabled);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.previousButtonDisabled);
|
||||
}
|
||||
|
||||
checkNextPageButtonIsEnabled() {
|
||||
Util.waitUntilElementIsNotOnPage(this.nextButtonDisabled);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.nextButtonDisabled);
|
||||
}
|
||||
|
||||
checkPreviousPageButtonIsEnabled() {
|
||||
Util.waitUntilElementIsNotOnPage(this.previousButtonDisabled);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.previousButtonDisabled);
|
||||
}
|
||||
|
||||
getTotalNumberOfFiles() {
|
||||
Util.waitUntilElementIsVisible(this.totalFiles);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.totalFiles);
|
||||
const numberOfFiles = this.totalFiles.getText().then(function (totalNumber) {
|
||||
const totalNumberOfFiles = totalNumber.split('of ')[1];
|
||||
return totalNumberOfFiles;
|
||||
|
@@ -17,8 +17,8 @@
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
import { Util } from '../../util/util';
|
||||
import { DataTableComponentPage } from './dataTableComponentPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
const column = {
|
||||
role: 'Role'
|
||||
@@ -42,75 +42,75 @@ export class PermissionsPage {
|
||||
closeButton = element(by.id('add-permission-dialog-close-button'));
|
||||
|
||||
clickCloseButton() {
|
||||
Util.waitUntilElementIsClickable(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.closeButton);
|
||||
this.closeButton.click();
|
||||
}
|
||||
|
||||
checkAddPermissionButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.addPermissionButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addPermissionButton);
|
||||
}
|
||||
|
||||
clickAddPermissionButton() {
|
||||
Util.waitUntilElementIsClickable(this.addPermissionButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.addPermissionButton);
|
||||
return this.addPermissionButton.click();
|
||||
}
|
||||
|
||||
checkAddPermissionDialogIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.addPermissionDialog);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addPermissionDialog);
|
||||
}
|
||||
|
||||
checkSearchUserInputIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.searchUserInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchUserInput);
|
||||
}
|
||||
|
||||
searchUserOrGroup(name) {
|
||||
Util.waitUntilElementIsClickable(this.searchUserInput);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.searchUserInput);
|
||||
this.searchUserInput.clear();
|
||||
return this.searchUserInput.sendKeys(name);
|
||||
}
|
||||
|
||||
checkResultListIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.searchResults);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.searchResults);
|
||||
}
|
||||
|
||||
clickUserOrGroup(name) {
|
||||
const userOrGroupName = element(by.cssContainingText('mat-list-option .mat-list-text', name));
|
||||
Util.waitUntilElementIsVisible(userOrGroupName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(userOrGroupName);
|
||||
userOrGroupName.click();
|
||||
Util.waitUntilElementIsVisible(this.addButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addButton);
|
||||
return this.addButton.click();
|
||||
}
|
||||
|
||||
checkUserOrGroupIsAdded(name) {
|
||||
const userOrGroupName = element(by.css('div[data-automation-id="text_' + name + '"]'));
|
||||
Util.waitUntilElementIsVisible(userOrGroupName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(userOrGroupName);
|
||||
}
|
||||
|
||||
checkUserOrGroupIsDeleted(name) {
|
||||
const userOrGroupName = element(by.css('div[data-automation-id="text_' + name + '"]'));
|
||||
Util.waitUntilElementIsNotVisible(userOrGroupName);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(userOrGroupName);
|
||||
}
|
||||
|
||||
checkPermissionInheritedButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.permissionInheritedButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.permissionInheritedButton);
|
||||
}
|
||||
|
||||
clickPermissionInheritedButton() {
|
||||
Util.waitUntilElementIsClickable(this.permissionInheritedButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.permissionInheritedButton);
|
||||
return this.permissionInheritedButton.click();
|
||||
}
|
||||
|
||||
clickDeletePermissionButton() {
|
||||
Util.waitUntilElementIsClickable(this.deletePermissionButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.deletePermissionButton);
|
||||
return this.deletePermissionButton.click();
|
||||
}
|
||||
|
||||
checkNoPermissionsIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.noPermissions);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.noPermissions);
|
||||
}
|
||||
|
||||
getPermissionInheritedButtonText() {
|
||||
Util.waitUntilElementIsClickable(this.permissionInheritedButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.permissionInheritedButton);
|
||||
return this.permissionInheritedButtonText.getText();
|
||||
}
|
||||
|
||||
@@ -120,39 +120,39 @@ export class PermissionsPage {
|
||||
|
||||
getRoleCellValue(rowName) {
|
||||
const locator = new DataTableComponentPage().getCellByRowAndColumn('Authority ID', rowName, column.role);
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
return locator.getText();
|
||||
}
|
||||
|
||||
clickRoleDropdown() {
|
||||
Util.waitUntilElementIsVisible(this.roleDropdown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.roleDropdown);
|
||||
return this.roleDropdown.click();
|
||||
}
|
||||
|
||||
getRoleDropdownOptions() {
|
||||
Util.waitUntilElementIsVisible(this.roleDropdownOptions);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.roleDropdownOptions);
|
||||
return this.roleDropdownOptions;
|
||||
}
|
||||
|
||||
selectOption(name) {
|
||||
const selectProcessDropdown = element(by.cssContainingText('.mat-option-text', name));
|
||||
Util.waitUntilElementIsVisible(selectProcessDropdown);
|
||||
Util.waitUntilElementIsClickable(selectProcessDropdown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(selectProcessDropdown);
|
||||
BrowserVisibility.waitUntilElementIsClickable(selectProcessDropdown);
|
||||
selectProcessDropdown.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getAssignPermissionErrorText() {
|
||||
Util.waitUntilElementIsVisible(this.assignPermissionError);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.assignPermissionError);
|
||||
return this.assignPermissionError.getText();
|
||||
}
|
||||
|
||||
checkPermissionContainerIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.permissionDisplayContainer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.permissionDisplayContainer);
|
||||
}
|
||||
|
||||
checkUserOrGroupIsDisplayed(name) {
|
||||
const userOrGroupName = element(by.cssContainingText('mat-list-option .mat-list-text', name));
|
||||
Util.waitUntilElementIsVisible(userOrGroupName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(userOrGroupName);
|
||||
}
|
||||
}
|
||||
|
@@ -14,9 +14,9 @@
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
import { Util } from '../../../util/util';
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { EditProcessFilterDialog } from '../dialog/editProcessFilterDialog';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class EditProcessFilterCloudComponent {
|
||||
|
||||
@@ -33,16 +33,16 @@ export class EditProcessFilterCloudComponent {
|
||||
}
|
||||
|
||||
clickCustomiseFilterHeader() {
|
||||
Util.waitUntilElementIsVisible(this.customiseFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.customiseFilter);
|
||||
this.customiseFilter.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
checkCustomiseFilterHeaderIsExpanded() {
|
||||
const expansionPanelExtended = element.all(by.css('mat-expansion-panel-header[class*="mat-expanded"]')).first();
|
||||
Util.waitUntilElementIsVisible(expansionPanelExtended);
|
||||
BrowserVisibility.waitUntilElementIsVisible(expansionPanelExtended);
|
||||
const content = element(by.css('div[class*="mat-expansion-panel-content "][style*="visible"]'));
|
||||
Util.waitUntilElementIsVisible(content);
|
||||
BrowserVisibility.waitUntilElementIsVisible(content);
|
||||
return this;
|
||||
}
|
||||
|
||||
@@ -50,8 +50,8 @@ export class EditProcessFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('status');
|
||||
|
||||
const statusElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(statusElement);
|
||||
Util.waitUntilElementIsVisible(statusElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(statusElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(statusElement);
|
||||
statusElement.click();
|
||||
return this;
|
||||
}
|
||||
@@ -64,15 +64,15 @@ export class EditProcessFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('sort');
|
||||
|
||||
const sortElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(sortElement);
|
||||
Util.waitUntilElementIsVisible(sortElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(sortElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(sortElement);
|
||||
sortElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getSortFilterDropDownValue() {
|
||||
const sortLocator = element.all(by.css("mat-form-field[data-automation-id='sort'] span")).first();
|
||||
Util.waitUntilElementIsVisible(sortLocator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(sortLocator);
|
||||
return sortLocator.getText();
|
||||
}
|
||||
|
||||
@@ -80,8 +80,8 @@ export class EditProcessFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('order');
|
||||
|
||||
const orderElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(orderElement);
|
||||
Util.waitUntilElementIsVisible(orderElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(orderElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(orderElement);
|
||||
orderElement.click();
|
||||
return this;
|
||||
}
|
||||
@@ -92,18 +92,18 @@ export class EditProcessFilterCloudComponent {
|
||||
|
||||
clickOnDropDownArrow(option) {
|
||||
const dropDownArrow = element.all(by.css("mat-form-field[data-automation-id='" + option + "'] div[class='mat-select-arrow-wrapper']")).first();
|
||||
Util.waitUntilElementIsVisible(dropDownArrow);
|
||||
Util.waitUntilElementIsClickable(dropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(dropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsClickable(dropDownArrow);
|
||||
dropDownArrow.click();
|
||||
Util.waitUntilElementIsVisible(this.selectedOption);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectedOption);
|
||||
}
|
||||
|
||||
setAppNameDropDown(option) {
|
||||
this.clickOnDropDownArrow('appName');
|
||||
|
||||
const appNameElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(appNameElement);
|
||||
Util.waitUntilElementIsVisible(appNameElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(appNameElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(appNameElement);
|
||||
appNameElement.click();
|
||||
return this;
|
||||
}
|
||||
@@ -134,13 +134,13 @@ export class EditProcessFilterCloudComponent {
|
||||
|
||||
getProperty(property) {
|
||||
const locator = element.all(by.css('input[data-automation-id="adf-cloud-edit-process-property-' + property + '"]')).first();
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
return locator.getAttribute('value');
|
||||
}
|
||||
|
||||
setProperty(property, option) {
|
||||
const locator = element.all(by.css('input[data-automation-id="adf-cloud-edit-process-property-' + property + '"]')).first();
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
locator.clear();
|
||||
locator.sendKeys(option);
|
||||
locator.sendKeys(protractor.Key.ENTER);
|
||||
@@ -148,55 +148,55 @@ export class EditProcessFilterCloudComponent {
|
||||
}
|
||||
|
||||
checkSaveButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSaveAsButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveAsButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkDeleteButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.deleteButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSaveButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
return this.saveButton.isEnabled();
|
||||
}
|
||||
|
||||
checkSaveAsButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveAsButton);
|
||||
return this.saveAsButton.isEnabled();
|
||||
}
|
||||
|
||||
checkDeleteButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.deleteButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteButton);
|
||||
return this.deleteButton.isEnabled();
|
||||
}
|
||||
|
||||
clickSaveAsButton() {
|
||||
const disabledButton = element(by.css(("button[data-automation-id='adf-filter-action-saveAs'][disabled]")));
|
||||
Util.waitUntilElementIsClickable(this.saveAsButton);
|
||||
Util.waitUntilElementIsVisible(this.saveAsButton);
|
||||
Util.waitUntilElementIsNotVisible(disabledButton);
|
||||
const disabledButton = element(by.css(("button[id='adf-save-as-id'][disabled]")));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(disabledButton);
|
||||
this.saveAsButton.click();
|
||||
return this.editProcessFilter;
|
||||
}
|
||||
|
||||
clickDeleteButton() {
|
||||
Util.waitUntilElementIsVisible(this.deleteButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteButton);
|
||||
this.deleteButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickSaveButton() {
|
||||
const disabledButton = element(by.css(("button[data-automation-id='adf-filter-action-saveAs'][disabled]")));
|
||||
Util.waitUntilElementIsClickable(this.saveButton);
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
Util.waitUntilElementIsNotVisible(disabledButton);
|
||||
const disabledButton = element(by.css(("button[id='adf-save-as-id'][disabled]")));
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(disabledButton);
|
||||
this.saveButton.click();
|
||||
return this;
|
||||
}
|
||||
|
@@ -15,9 +15,9 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { EditTaskFilterDialog } from '../dialog/editTaskFilterDialog';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class EditTaskFilterCloudComponent {
|
||||
|
||||
@@ -43,7 +43,7 @@ export class EditTaskFilterCloudComponent {
|
||||
}
|
||||
|
||||
clickCustomiseFilterHeader() {
|
||||
Util.waitUntilElementIsVisible(this.customiseFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.customiseFilter);
|
||||
this.customiseFilter.click();
|
||||
return this;
|
||||
}
|
||||
@@ -52,8 +52,8 @@ export class EditTaskFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('status');
|
||||
|
||||
const statusElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsVisible(statusElement);
|
||||
Util.waitUntilElementIsClickable(statusElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(statusElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(statusElement);
|
||||
statusElement.click();
|
||||
return this;
|
||||
}
|
||||
@@ -66,15 +66,15 @@ export class EditTaskFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('sort');
|
||||
|
||||
const sortElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(sortElement);
|
||||
Util.waitUntilElementIsVisible(sortElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(sortElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(sortElement);
|
||||
sortElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getSortFilterDropDownValue() {
|
||||
const elementSort = element.all(by.css("mat-select[data-automation-id='adf-cloud-edit-task-property-sort'] span")).first();
|
||||
Util.waitUntilElementIsVisible(elementSort);
|
||||
BrowserVisibility.waitUntilElementIsVisible(elementSort);
|
||||
return elementSort.getText();
|
||||
}
|
||||
|
||||
@@ -82,8 +82,8 @@ export class EditTaskFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('order');
|
||||
|
||||
const orderElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(orderElement);
|
||||
Util.waitUntilElementIsVisible(orderElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(orderElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(orderElement);
|
||||
orderElement.click();
|
||||
return this;
|
||||
}
|
||||
@@ -94,9 +94,9 @@ export class EditTaskFilterCloudComponent {
|
||||
|
||||
clickOnDropDownArrow(option) {
|
||||
const dropDownArrow = element.all(by.css("mat-form-field[data-automation-id='" + option + "'] div[class*='arrow']")).first();
|
||||
Util.waitUntilElementIsVisible(dropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(dropDownArrow);
|
||||
dropDownArrow.click();
|
||||
Util.waitUntilElementIsVisible(this.selectedOption);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectedOption);
|
||||
}
|
||||
|
||||
setAssignee(option) {
|
||||
@@ -150,52 +150,52 @@ export class EditTaskFilterCloudComponent {
|
||||
}
|
||||
|
||||
checkSaveButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSaveAsButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveAsButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkDeleteButtonIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.deleteButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSaveButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
return this.saveButton.isEnabled();
|
||||
}
|
||||
|
||||
checkSaveAsButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
return this.saveAsButton.isEnabled();
|
||||
}
|
||||
|
||||
checkDeleteButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
return this.deleteButton.isEnabled();
|
||||
}
|
||||
|
||||
clickSaveAsButton() {
|
||||
const disabledButton = element(by.css(("button[id='adf-save-as-id'][disabled]")));
|
||||
Util.waitUntilElementIsClickable(this.saveAsButton);
|
||||
Util.waitUntilElementIsVisible(this.saveAsButton);
|
||||
Util.waitUntilElementIsNotVisible(disabledButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveAsButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(disabledButton);
|
||||
this.saveAsButton.click();
|
||||
return this.editTaskFilter;
|
||||
}
|
||||
|
||||
clickDeleteButton() {
|
||||
Util.waitUntilElementIsVisible(this.deleteButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.deleteButton);
|
||||
this.deleteButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickSaveButton() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
this.saveButton.click();
|
||||
return this;
|
||||
}
|
||||
@@ -206,7 +206,7 @@ export class EditTaskFilterCloudComponent {
|
||||
}
|
||||
|
||||
clearField(locator) {
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
locator.getAttribute('value').then((result) => {
|
||||
for (let i = result.length; i >= 0; i--) {
|
||||
locator.sendKeys(protractor.Key.BACK_SPACE);
|
||||
@@ -218,15 +218,15 @@ export class EditTaskFilterCloudComponent {
|
||||
this.clickOnDropDownArrow('appName');
|
||||
|
||||
const appNameElement = element.all(by.cssContainingText('mat-option span', option)).first();
|
||||
Util.waitUntilElementIsClickable(appNameElement);
|
||||
Util.waitUntilElementIsVisible(appNameElement);
|
||||
BrowserVisibility.waitUntilElementIsClickable(appNameElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(appNameElement);
|
||||
appNameElement.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
getAppNameDropDownValue() {
|
||||
const locator = element.all(by.css("mat-select[data-automation-id='adf-cloud-edit-task-property-appName'] span")).first();
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
return locator.getText();
|
||||
}
|
||||
|
||||
@@ -252,7 +252,7 @@ export class EditTaskFilterCloudComponent {
|
||||
|
||||
setProperty(property, option) {
|
||||
const locator = element(by.css('input[data-automation-id="adf-cloud-edit-task-property-' + property + '"]'));
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
locator.clear();
|
||||
locator.sendKeys(option);
|
||||
locator.sendKeys(protractor.Key.ENTER);
|
||||
|
@@ -16,14 +16,14 @@
|
||||
*/
|
||||
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class GroupCloudComponent {
|
||||
|
||||
groupCloudSearch = element(by.css('input[data-automation-id="adf-cloud-group-search-input"]'));
|
||||
|
||||
searchGroups(name) {
|
||||
Util.waitUntilElementIsVisible(this.groupCloudSearch);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.groupCloudSearch);
|
||||
this.groupCloudSearch.clear().then(() => {
|
||||
for (let i = 0; i < name.length; i++) {
|
||||
this.groupCloudSearch.sendKeys(name[i]);
|
||||
@@ -36,26 +36,26 @@ export class GroupCloudComponent {
|
||||
|
||||
selectGroupFromList(name) {
|
||||
const groupRow = element.all(by.cssContainingText('mat-option span', name)).first();
|
||||
Util.waitUntilElementIsVisible(groupRow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(groupRow);
|
||||
groupRow.click();
|
||||
Util.waitUntilElementIsNotVisible(groupRow);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(groupRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkGroupIsDisplayed(name) {
|
||||
const groupRow = element.all(by.cssContainingText('mat-option span', name)).first();
|
||||
Util.waitUntilElementIsVisible(groupRow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(groupRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkGroupIsNotDisplayed(name) {
|
||||
const groupRow = element.all(by.cssContainingText('mat-option span', name)).first();
|
||||
Util.waitUntilElementIsNotVisible(groupRow);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(groupRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSelectedGroup(group) {
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText('mat-chip[data-automation-id*="adf-cloud-group-chip-"]', group)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText('mat-chip[data-automation-id*="adf-cloud-group-chip-"]', group)));
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -16,14 +16,14 @@
|
||||
*/
|
||||
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class PeopleCloudComponent {
|
||||
|
||||
peopleCloudSearch = element(by.css('input[data-automation-id="adf-people-cloud-search-input"]'));
|
||||
|
||||
searchAssigneeAndSelect(name) {
|
||||
Util.waitUntilElementIsVisible(this.peopleCloudSearch);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudSearch);
|
||||
this.peopleCloudSearch.clear();
|
||||
this.peopleCloudSearch.sendKeys(name);
|
||||
this.selectAssigneeFromList(name);
|
||||
@@ -31,7 +31,7 @@ export class PeopleCloudComponent {
|
||||
}
|
||||
|
||||
searchAssignee(name) {
|
||||
Util.waitUntilElementIsVisible(this.peopleCloudSearch);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudSearch);
|
||||
this.peopleCloudSearch.clear().then(() => {
|
||||
for (let i = 0; i < name.length; i++) {
|
||||
this.peopleCloudSearch.sendKeys(name[i]);
|
||||
@@ -44,31 +44,31 @@ export class PeopleCloudComponent {
|
||||
|
||||
selectAssigneeFromList(name) {
|
||||
const assigneeRow = element(by.cssContainingText('mat-option span.adf-people-label-name', name));
|
||||
Util.waitUntilElementIsVisible(assigneeRow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(assigneeRow);
|
||||
assigneeRow.click();
|
||||
Util.waitUntilElementIsNotVisible(assigneeRow);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(assigneeRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
getAssignee() {
|
||||
Util.waitUntilElementIsVisible(this.peopleCloudSearch);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.peopleCloudSearch);
|
||||
return this.peopleCloudSearch.getAttribute('value');
|
||||
}
|
||||
|
||||
checkUserIsDisplayed(name) {
|
||||
const assigneeRow = element(by.cssContainingText('mat-option span.adf-people-label-name', name));
|
||||
Util.waitUntilElementIsVisible(assigneeRow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(assigneeRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkUserIsNotDisplayed(name) {
|
||||
const assigneeRow = element(by.cssContainingText('mat-option span.adf-people-label-name', name));
|
||||
Util.waitUntilElementIsNotVisible(assigneeRow);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(assigneeRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkSelectedPeople(person) {
|
||||
Util.waitUntilElementIsVisible(element(by.cssContainingText('mat-chip-list mat-chip', person)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText('mat-chip-list mat-chip', person)));
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ProcessFiltersCloudComponent {
|
||||
|
||||
@@ -28,30 +28,30 @@ export class ProcessFiltersCloudComponent {
|
||||
}
|
||||
|
||||
checkProcessFilterIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
return this;
|
||||
}
|
||||
|
||||
getProcessFilterIcon() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const icon = this.filter.element(this.filterIcon);
|
||||
Util.waitUntilElementIsVisible(icon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(icon);
|
||||
return icon.getText();
|
||||
}
|
||||
|
||||
checkProcessFilterHasNoIcon() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
Util.waitUntilElementIsNotOnPage(this.filter.element(this.filterIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.filter.element(this.filterIcon));
|
||||
}
|
||||
|
||||
clickProcessFilter() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
Util.waitUntilElementIsClickable(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.filter);
|
||||
return this.filter.click();
|
||||
}
|
||||
|
||||
checkProcessFilterNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter);
|
||||
return this.filter;
|
||||
}
|
||||
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
@@ -55,12 +55,12 @@ export class ProcessListCloudComponent {
|
||||
}
|
||||
|
||||
checkProcessListIsLoaded() {
|
||||
Util.waitUntilElementIsVisible(this.processList);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processList);
|
||||
return this;
|
||||
}
|
||||
|
||||
getNoProcessFoundMessage() {
|
||||
Util.waitUntilElementIsVisible(this.noProcessFound);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.noProcessFound);
|
||||
return this.noProcessFound.getText();
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class TaskFiltersCloudComponent {
|
||||
|
||||
@@ -28,29 +28,29 @@ export class TaskFiltersCloudComponent {
|
||||
}
|
||||
|
||||
checkTaskFilterIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
return this;
|
||||
}
|
||||
|
||||
getTaskFilterIcon() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
const icon = this.filter.element(this.taskIcon);
|
||||
Util.waitUntilElementIsVisible(icon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(icon);
|
||||
return icon.getText();
|
||||
}
|
||||
|
||||
checkTaskFilterHasNoIcon() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
Util.waitUntilElementIsNotOnPage(this.filter.element(this.taskIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.filter.element(this.taskIcon));
|
||||
}
|
||||
|
||||
clickTaskFilter() {
|
||||
Util.waitUntilElementIsVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.filter);
|
||||
return this.filter.click();
|
||||
}
|
||||
|
||||
checkTaskFilterNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.filter);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.filter);
|
||||
return this.filter;
|
||||
}
|
||||
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
@@ -67,7 +67,7 @@ export class TaskListCloudComponent {
|
||||
}
|
||||
|
||||
getRow(taskName) {
|
||||
return this.dataTable.getRow('Name', taskName);
|
||||
return this.dataTable.getRowElement('Name', taskName);
|
||||
}
|
||||
|
||||
checkContentIsDisplayedByProcessInstanceId(taskName) {
|
||||
@@ -87,12 +87,12 @@ export class TaskListCloudComponent {
|
||||
}
|
||||
|
||||
checkTaskListIsLoaded() {
|
||||
Util.waitUntilElementIsVisible(this.taskList);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskList);
|
||||
return this;
|
||||
}
|
||||
|
||||
getNoTasksFoundMessage() {
|
||||
Util.waitUntilElementIsVisible(this.noTasksFound);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.noTasksFound);
|
||||
return this.noTasksFound.getText();
|
||||
}
|
||||
|
||||
@@ -106,7 +106,7 @@ export class TaskListCloudComponent {
|
||||
|
||||
getIdCellValue(rowName) {
|
||||
const locator = new DataTableComponentPage().getCellByRowAndColumn('Name', rowName, column.id);
|
||||
Util.waitUntilElementIsVisible(locator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(locator);
|
||||
return locator.getText();
|
||||
}
|
||||
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { element, by, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class AnalyticsPage {
|
||||
|
||||
@@ -27,15 +27,15 @@ export class AnalyticsPage {
|
||||
|
||||
getReport(title) {
|
||||
const reportTitle = element(by.css(`mat-icon[data-automation-id="${title}_filter"]`));
|
||||
Util.waitUntilElementIsVisible(reportTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(reportTitle);
|
||||
reportTitle.click();
|
||||
}
|
||||
|
||||
changeReportTitle(title) {
|
||||
Util.waitUntilElementIsVisible(this.toolbarTitleContainer);
|
||||
Util.waitUntilElementIsClickable(this.toolbarTitleContainer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.toolbarTitleContainer);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.toolbarTitleContainer);
|
||||
this.toolbarTitleContainer.click();
|
||||
Util.waitUntilElementIsVisible(this.toolbarTitleInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.toolbarTitleInput);
|
||||
this.toolbarTitleInput.click();
|
||||
this.clearReportTitle();
|
||||
this.toolbarTitleInput.sendKeys(title);
|
||||
@@ -43,23 +43,23 @@ export class AnalyticsPage {
|
||||
}
|
||||
|
||||
clearReportTitle() {
|
||||
Util.waitUntilElementIsVisible(this.toolbarTitleInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.toolbarTitleInput);
|
||||
this.toolbarTitleInput.getAttribute('value').then((value) => {
|
||||
let i;
|
||||
for (i = value.length; i >= 0; i--) {
|
||||
this.toolbarTitleInput.sendKeys(protractor.Key.BACK_SPACE);
|
||||
}
|
||||
});
|
||||
Util.waitUntilElementIsVisible(this.toolbarTitleInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.toolbarTitleInput);
|
||||
}
|
||||
|
||||
getReportTitle() {
|
||||
Util.waitUntilElementIsVisible(this.toolbarTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.toolbarTitle);
|
||||
return this.toolbarTitle.getText();
|
||||
}
|
||||
|
||||
checkNoReportMessage() {
|
||||
Util.waitUntilElementIsVisible(this.reportMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.reportMessage);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { element, by, browser } from 'protractor';
|
||||
|
||||
export class AppNavigationBarPage {
|
||||
@@ -28,7 +28,7 @@ export class AppNavigationBarPage {
|
||||
reportsButtonSelected = element.all(by.cssContainingText('div[class*="mat-tab-label"] .mat-tab-labels div[aria-selected="true"]', 'Reports')).first();
|
||||
|
||||
clickTasksButton() {
|
||||
Util.waitUntilElementIsVisible(this.tasksButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.tasksButton);
|
||||
this.tasksButton.click();
|
||||
return browser.sleep(400);
|
||||
}
|
||||
@@ -48,8 +48,8 @@ export class AppNavigationBarPage {
|
||||
}
|
||||
|
||||
clickReportsButton() {
|
||||
Util.waitUntilElementIsVisible(this.reportsButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.reportsButton);
|
||||
this.reportsButton.click();
|
||||
return Util.waitUntilElementIsVisible(this.reportsButtonSelected);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.reportsButtonSelected);
|
||||
}
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { element, by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class AttachFormPage {
|
||||
|
||||
@@ -29,19 +29,19 @@ export class AttachFormPage {
|
||||
attachFormDropdown = element(by.css("div[class='adf-attach-form-row']"));
|
||||
|
||||
checkNoFormMessageIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.noFormMessage);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.noFormMessage);
|
||||
}
|
||||
|
||||
checkAttachFormButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.attachFormButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.attachFormButton);
|
||||
}
|
||||
|
||||
checkCompleteButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.completeButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
|
||||
}
|
||||
|
||||
clickAttachFormButton() {
|
||||
Util.waitUntilElementIsVisible(this.attachFormButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.attachFormButton);
|
||||
return this.attachFormButton.click();
|
||||
}
|
||||
|
||||
@@ -52,29 +52,29 @@ export class AttachFormPage {
|
||||
}
|
||||
|
||||
checkFormDropdownIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.formDropdown);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.formDropdown);
|
||||
}
|
||||
|
||||
checkCancelButtonIsDisplayed() {
|
||||
return Util.waitUntilElementIsVisible(this.cancelButton);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.cancelButton);
|
||||
}
|
||||
|
||||
clickAttachFormDropdown() {
|
||||
Util.waitUntilElementIsClickable(this.attachFormDropdown);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.attachFormDropdown);
|
||||
return this.attachFormDropdown.click();
|
||||
}
|
||||
|
||||
selectAttachFormOption(option) {
|
||||
Util.waitUntilElementIsClickable(element(by.cssContainingText("mat-option[role='option']", option)));
|
||||
BrowserVisibility.waitUntilElementIsClickable(element(by.cssContainingText("mat-option[role='option']", option)));
|
||||
return element(by.cssContainingText("mat-option[role='option']", option)).click();
|
||||
}
|
||||
|
||||
clickCancelButton() {
|
||||
Util.waitUntilElementIsVisible(this.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cancelButton);
|
||||
return this.cancelButton.click();
|
||||
}
|
||||
|
||||
checkAttachFormButtonIsDisabled() {
|
||||
return Util.waitUntilElementIsVisible(element(by.css('button[id="adf-no-form-attach-form-button"][disabled]')));
|
||||
return BrowserVisibility.waitUntilElementIsVisible(element(by.css('button[id="adf-no-form-attach-form-button"][disabled]')));
|
||||
}
|
||||
}
|
||||
|
@@ -17,10 +17,10 @@
|
||||
|
||||
import { element, by, protractor, browser } from 'protractor';
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import TestConfig = require('../../../test.config');
|
||||
import path = require('path');
|
||||
import remote = require('selenium-webdriver/remote');
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class AttachmentListPage {
|
||||
|
||||
@@ -32,31 +32,31 @@ export class AttachmentListPage {
|
||||
noContentContainer = element(by.css("div[class*='adf-no-content-container']"));
|
||||
|
||||
checkEmptyAttachmentList() {
|
||||
Util.waitUntilElementIsVisible(this.noContentContainer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.noContentContainer);
|
||||
}
|
||||
|
||||
clickAttachFileButton(fileLocation) {
|
||||
browser.setFileDetector(new remote.FileDetector());
|
||||
|
||||
Util.waitUntilElementIsVisible(this.attachFileButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.attachFileButton);
|
||||
return this.attachFileButton.sendKeys(path.resolve(path.join(TestConfig.main.rootPath, fileLocation)));
|
||||
}
|
||||
|
||||
checkFileIsAttached(name) {
|
||||
const fileAttached = element.all(by.css('div[data-automation-id="' + name + '"]')).first();
|
||||
Util.waitUntilElementIsVisible(fileAttached);
|
||||
BrowserVisibility.waitUntilElementIsVisible(fileAttached);
|
||||
}
|
||||
|
||||
checkAttachFileButtonIsNotDisplayed() {
|
||||
Util.waitUntilElementIsNotVisible(this.attachFileButton);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(this.attachFileButton);
|
||||
}
|
||||
|
||||
viewFile(name) {
|
||||
Util.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
element.all(by.css('div[data-automation-id="' + name + '"]')).first().click();
|
||||
Util.waitUntilElementIsVisible(this.buttonMenu);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.buttonMenu);
|
||||
this.buttonMenu.click();
|
||||
Util.waitUntilElementIsVisible(this.viewButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.viewButton);
|
||||
browser.driver.sleep(500);
|
||||
this.viewButton.click();
|
||||
browser.driver.sleep(500);
|
||||
@@ -64,11 +64,11 @@ export class AttachmentListPage {
|
||||
}
|
||||
|
||||
removeFile(name) {
|
||||
Util.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
element.all(by.css('div[data-automation-id="' + name + '"]')).first().click();
|
||||
Util.waitUntilElementIsVisible(this.buttonMenu);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.buttonMenu);
|
||||
this.buttonMenu.click();
|
||||
Util.waitUntilElementIsVisible(this.removeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.removeButton);
|
||||
browser.driver.sleep(500);
|
||||
this.removeButton.click();
|
||||
browser.driver.sleep(500);
|
||||
@@ -76,28 +76,28 @@ export class AttachmentListPage {
|
||||
}
|
||||
|
||||
downloadFile(name) {
|
||||
Util.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
element.all(by.css('div[data-automation-id="' + name + '"]')).first().click();
|
||||
Util.waitUntilElementIsVisible(this.buttonMenu);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.buttonMenu);
|
||||
this.buttonMenu.click();
|
||||
Util.waitUntilElementIsVisible(this.downloadButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.downloadButton);
|
||||
browser.driver.sleep(500);
|
||||
this.downloadButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
doubleClickFile(name) {
|
||||
Util.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
BrowserVisibility.waitUntilElementIsVisible(element.all(by.css('div[data-automation-id="' + name + '"]')).first());
|
||||
const fileAttached = element.all(by.css('div[data-automation-id="' + name + '"]')).first();
|
||||
Util.waitUntilElementIsVisible(fileAttached);
|
||||
Util.waitUntilElementIsClickable(fileAttached);
|
||||
BrowserVisibility.waitUntilElementIsVisible(fileAttached);
|
||||
BrowserVisibility.waitUntilElementIsClickable(fileAttached);
|
||||
fileAttached.click();
|
||||
browser.actions().sendKeys(protractor.Key.ENTER).perform();
|
||||
}
|
||||
|
||||
checkFileIsRemoved(name) {
|
||||
const fileAttached = element.all(by.css('div[data-automation-id="' + name + '"]')).first();
|
||||
Util.waitUntilElementIsNotVisible(fileAttached);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(fileAttached);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -41,19 +41,9 @@ export class AppSettingsToggles {
|
||||
return this;
|
||||
}
|
||||
|
||||
disableTaskFiltersIcon() {
|
||||
this.formControllersPage.disableToggle(this.showTaskFilterIconsToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
enableProcessFiltersIcon() {
|
||||
this.formControllersPage.enableToggle(this.showProcessFilterIconsToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
disableProcessFiltersIcon() {
|
||||
this.formControllersPage.disableToggle(this.showProcessFilterIconsToggle);
|
||||
return this;
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
import { Util } from '../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ChecklistDialog {
|
||||
|
||||
@@ -26,41 +26,41 @@ export class ChecklistDialog {
|
||||
dialogTitle = element(by.id('add-checklist-title'));
|
||||
|
||||
addName(name) {
|
||||
Util.waitUntilElementIsClickable(this.nameField);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.nameField);
|
||||
this.nameField.clear();
|
||||
this.nameField.sendKeys(name);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickCreateChecklistButton() {
|
||||
Util.waitUntilElementIsVisible(this.addChecklistButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addChecklistButton);
|
||||
this.addChecklistButton.click();
|
||||
}
|
||||
|
||||
clickCancelButton() {
|
||||
Util.waitUntilElementIsVisible(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.closeButton);
|
||||
this.closeButton.click();
|
||||
}
|
||||
|
||||
getDialogTitle() {
|
||||
Util.waitUntilElementIsVisible(this.dialogTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dialogTitle);
|
||||
return this.dialogTitle.getText();
|
||||
}
|
||||
|
||||
getNameFieldPlaceholder() {
|
||||
Util.waitUntilElementIsVisible(this.nameField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.nameField);
|
||||
return this.nameField.getAttribute('placeholder');
|
||||
}
|
||||
|
||||
checkCancelButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.closeButton);
|
||||
Util.waitUntilElementIsClickable(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.closeButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.closeButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkAddChecklistButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.addChecklistButton);
|
||||
Util.waitUntilElementIsClickable(this.addChecklistButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.addChecklistButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.addChecklistButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
|
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
import { element, by, Key } from 'protractor';
|
||||
import { Util } from '../../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class StartTaskDialog {
|
||||
|
||||
@@ -30,26 +30,26 @@ export class StartTaskDialog {
|
||||
cancelButton = element(by.css('button[id="button-cancel"]'));
|
||||
|
||||
addName(userName) {
|
||||
Util.waitUntilElementIsVisible(this.name);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.name);
|
||||
this.name.clear();
|
||||
this.name.sendKeys(userName);
|
||||
return this;
|
||||
}
|
||||
|
||||
addDescription(userDescription) {
|
||||
Util.waitUntilElementIsVisible(this.description);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.description);
|
||||
this.description.sendKeys(userDescription);
|
||||
return this;
|
||||
}
|
||||
|
||||
addDueDate(date) {
|
||||
Util.waitUntilElementIsVisible(this.dueDate);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.dueDate);
|
||||
this.dueDate.sendKeys(date);
|
||||
return this;
|
||||
}
|
||||
|
||||
addAssignee(name) {
|
||||
Util.waitUntilElementIsVisible(this.assignee);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.assignee);
|
||||
this.assignee.sendKeys(name);
|
||||
this.selectAssigneeFromList(name);
|
||||
return this;
|
||||
@@ -57,50 +57,50 @@ export class StartTaskDialog {
|
||||
|
||||
selectAssigneeFromList(name) {
|
||||
const assigneeRow = element(by.cssContainingText('mat-option span.adf-people-label-name', name));
|
||||
Util.waitUntilElementIsVisible(assigneeRow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(assigneeRow);
|
||||
assigneeRow.click();
|
||||
Util.waitUntilElementIsNotVisible(assigneeRow);
|
||||
BrowserVisibility.waitUntilElementIsNotVisible(assigneeRow);
|
||||
return this;
|
||||
}
|
||||
|
||||
getAssignee() {
|
||||
Util.waitUntilElementIsVisible(this.assignee);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.assignee);
|
||||
return this.assignee.getAttribute('placeholder');
|
||||
}
|
||||
|
||||
addForm(form) {
|
||||
Util.waitUntilElementIsVisible(this.formDropDown);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.formDropDown);
|
||||
this.formDropDown.click();
|
||||
return this.selectForm(form);
|
||||
}
|
||||
|
||||
selectForm(form) {
|
||||
const option = element(by.cssContainingText('span[class*="mat-option-text"]', form));
|
||||
Util.waitUntilElementIsVisible(option);
|
||||
Util.waitUntilElementIsClickable(option);
|
||||
BrowserVisibility.waitUntilElementIsVisible(option);
|
||||
BrowserVisibility.waitUntilElementIsClickable(option);
|
||||
option.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
clickStartButton() {
|
||||
Util.waitUntilElementIsVisible(this.startButton);
|
||||
Util.waitUntilElementIsClickable(this.startButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.startButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.startButton);
|
||||
return this.startButton.click();
|
||||
}
|
||||
|
||||
checkStartButtonIsEnabled() {
|
||||
Util.waitUntilElementIsVisible(this.startButtonEnabled);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.startButtonEnabled);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkStartButtonIsDisabled() {
|
||||
Util.waitUntilElementIsVisible(this.startButton.getAttribute('disabled'));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.startButton.getAttribute('disabled'));
|
||||
return this;
|
||||
}
|
||||
|
||||
clickCancelButton() {
|
||||
Util.waitUntilElementIsVisible(this.cancelButton);
|
||||
Util.waitUntilElementIsClickable(this.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cancelButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.cancelButton);
|
||||
return this.cancelButton.click();
|
||||
}
|
||||
|
||||
@@ -112,7 +112,7 @@ export class StartTaskDialog {
|
||||
|
||||
checkValidationErrorIsDisplayed(error, elementRef = 'mat-error') {
|
||||
const errorElement = element(by.cssContainingText(elementRef, error));
|
||||
Util.waitUntilElementIsVisible(errorElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(errorElement);
|
||||
return this;
|
||||
}
|
||||
}
|
||||
|
@@ -16,8 +16,8 @@
|
||||
*/
|
||||
|
||||
import { by, element } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class FiltersPage {
|
||||
|
||||
@@ -25,13 +25,13 @@ export class FiltersPage {
|
||||
dataTable = new DataTableComponentPage();
|
||||
|
||||
getActiveFilter() {
|
||||
Util.waitUntilElementIsVisible(this.activeFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeFilter);
|
||||
return this.activeFilter.getText();
|
||||
}
|
||||
|
||||
goToFilter(filterName) {
|
||||
const filter = element(by.css(`span[data-automation-id="${filterName}_filter"]`));
|
||||
Util.waitUntilElementIsVisible(filter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(filter);
|
||||
filter.click();
|
||||
return this;
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by, element } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class FormFields {
|
||||
|
||||
@@ -35,7 +35,7 @@ export class FormFields {
|
||||
|
||||
setFieldValue(locator, field, value) {
|
||||
const fieldElement = element(locator(field));
|
||||
Util.waitUntilElementIsVisible(fieldElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(fieldElement);
|
||||
fieldElement.clear();
|
||||
fieldElement.sendKeys(value);
|
||||
return this;
|
||||
@@ -43,29 +43,29 @@ export class FormFields {
|
||||
|
||||
checkWidgetIsVisible(fieldId) {
|
||||
const fieldElement = element.all(by.css(`adf-form-field div[id='field-${fieldId}-container']`)).first();
|
||||
Util.waitUntilElementIsVisible(fieldElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(fieldElement);
|
||||
}
|
||||
|
||||
checkWidgetIsHidden(fieldId) {
|
||||
const hiddenElement = element(by.css(`adf-form-field div[id='field-${fieldId}-container'][hidden]`));
|
||||
Util.waitUntilElementIsVisible(hiddenElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(hiddenElement);
|
||||
}
|
||||
|
||||
getWidget(fieldId) {
|
||||
const widget = element(by.css(`adf-form-field div[id='field-${fieldId}-container']`));
|
||||
Util.waitUntilElementIsVisible(widget);
|
||||
BrowserVisibility.waitUntilElementIsVisible(widget);
|
||||
return widget;
|
||||
}
|
||||
|
||||
getFieldValue(fieldId, valueLocatorParam?: any) {
|
||||
const value = this.getWidget(fieldId).element(valueLocatorParam || this.valueLocator);
|
||||
Util.waitUntilElementIsVisible(value);
|
||||
BrowserVisibility.waitUntilElementIsVisible(value);
|
||||
return value.getAttribute('value');
|
||||
}
|
||||
|
||||
getFieldLabel(fieldId, labelLocatorParam?: any) {
|
||||
const label = this.getWidget(fieldId).all(labelLocatorParam || this.labelLocator).first();
|
||||
Util.waitUntilElementIsVisible(label);
|
||||
BrowserVisibility.waitUntilElementIsVisible(label);
|
||||
return label.getText();
|
||||
}
|
||||
|
||||
@@ -76,96 +76,96 @@ export class FormFields {
|
||||
|
||||
getFieldText(fieldId, labelLocatorParam?: any) {
|
||||
const label = this.getWidget(fieldId).element(labelLocatorParam || this.labelLocator);
|
||||
Util.waitUntilElementIsVisible(label);
|
||||
BrowserVisibility.waitUntilElementIsVisible(label);
|
||||
return label.getText();
|
||||
}
|
||||
|
||||
getFieldPlaceHolder(fieldId, locator = 'input') {
|
||||
const placeHolderLocator = element(by.css(`${locator}#${fieldId}`)).getAttribute('placeholder');
|
||||
Util.waitUntilElementIsVisible(placeHolderLocator);
|
||||
BrowserVisibility.waitUntilElementIsVisible(placeHolderLocator);
|
||||
return placeHolderLocator;
|
||||
}
|
||||
|
||||
checkFieldValue(locator, field, val) {
|
||||
Util.waitUntilElementHasValue(element(locator(field)), val);
|
||||
BrowserVisibility.waitUntilElementHasValue(element(locator(field)), val);
|
||||
return this;
|
||||
}
|
||||
|
||||
refreshForm() {
|
||||
Util.waitUntilElementIsVisible(this.refreshButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.refreshButton);
|
||||
this.refreshButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
saveForm() {
|
||||
Util.waitUntilElementIsVisible(this.saveButton);
|
||||
Util.waitUntilElementIsClickable(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.saveButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.saveButton);
|
||||
this.saveButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
noFormIsDisplayed() {
|
||||
Util.waitUntilElementIsNotOnPage(this.formContent);
|
||||
BrowserVisibility.waitUntilElementIsNotOnPage(this.formContent);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkFormIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.formContent);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.formContent);
|
||||
return this;
|
||||
}
|
||||
|
||||
getNoFormMessage() {
|
||||
Util.waitUntilElementIsVisible(this.noFormMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.noFormMessage);
|
||||
return this.noFormMessage.getText();
|
||||
}
|
||||
|
||||
getCompletedTaskNoFormMessage() {
|
||||
Util.waitUntilElementIsVisible(this.completedTaskNoFormMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.completedTaskNoFormMessage);
|
||||
return this.completedTaskNoFormMessage.getText();
|
||||
}
|
||||
|
||||
clickOnAttachFormButton() {
|
||||
Util.waitUntilElementIsVisible(this.attachFormButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.attachFormButton);
|
||||
this.attachFormButton.click();
|
||||
return this;
|
||||
}
|
||||
|
||||
selectForm(formName) {
|
||||
Util.waitUntilElementIsVisible(this.selectFormDropDownArrow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectFormDropDownArrow);
|
||||
this.selectFormDropDownArrow.click();
|
||||
Util.waitUntilElementIsVisible(this.selectFormContent);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.selectFormContent);
|
||||
this.selectFormFromDropDown(formName);
|
||||
return this;
|
||||
}
|
||||
|
||||
selectFormFromDropDown(formName) {
|
||||
const formNameElement = element(by.cssContainingText('span', formName));
|
||||
Util.waitUntilElementIsVisible(formNameElement);
|
||||
BrowserVisibility.waitUntilElementIsVisible(formNameElement);
|
||||
formNameElement.click();
|
||||
}
|
||||
|
||||
checkWidgetIsReadOnlyMode(fieldId) {
|
||||
const widget = element(by.css(`adf-form-field div[id='field-${fieldId}-container']`));
|
||||
const widgetReadOnly = widget.element(by.css('div[class*="adf-readonly"]'));
|
||||
Util.waitUntilElementIsVisible(widgetReadOnly);
|
||||
BrowserVisibility.waitUntilElementIsVisible(widgetReadOnly);
|
||||
return widgetReadOnly;
|
||||
}
|
||||
|
||||
completeForm() {
|
||||
Util.waitUntilElementIsVisible(this.completeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
|
||||
return this.completeButton.click();
|
||||
}
|
||||
|
||||
setValueInInputById(fieldId, value) {
|
||||
const input = element(by.id(fieldId));
|
||||
Util.waitUntilElementIsVisible(input);
|
||||
BrowserVisibility.waitUntilElementIsVisible(input);
|
||||
input.clear();
|
||||
input.sendKeys(value);
|
||||
return this;
|
||||
}
|
||||
|
||||
isCompleteFormButtonDisabled() {
|
||||
Util.waitUntilElementIsVisible(this.completeButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.completeButton);
|
||||
return this.completeButton.getAttribute('disabled');
|
||||
}
|
||||
}
|
||||
|
@@ -16,28 +16,28 @@
|
||||
*/
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class FormPage {
|
||||
|
||||
errorLog = element(by.css('div[class*="console"]'));
|
||||
|
||||
checkErrorMessageForWidgetIsDisplayed(errorMessage) {
|
||||
return Util.waitUntilElementIsVisible(element(by.cssContainingText('.adf-error-text', errorMessage)));
|
||||
return BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText('.adf-error-text', errorMessage)));
|
||||
}
|
||||
|
||||
checkErrorMessageForWidgetIsNotDisplayed(errorMessage) {
|
||||
return Util.waitUntilElementIsNotVisible(element(by.cssContainingText('.adf-error-text', errorMessage)));
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(element(by.cssContainingText('.adf-error-text', errorMessage)));
|
||||
}
|
||||
|
||||
checkErrorLogMessage(errorMessage) {
|
||||
Util.waitUntilElementIsVisible(this.errorLog);
|
||||
return Util.waitUntilElementIsVisible(element(by.cssContainingText('div[class*="console"] p', errorMessage)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorLog);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(element(by.cssContainingText('div[class*="console"] p', errorMessage)));
|
||||
}
|
||||
|
||||
checkErrorMessageIsNotDisplayed(errorMessage) {
|
||||
Util.waitUntilElementIsVisible(this.errorLog);
|
||||
return Util.waitUntilElementIsNotVisible(element(by.cssContainingText('div[class*="console"] p', errorMessage)));
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.errorLog);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(element(by.cssContainingText('div[class*="console"] p', errorMessage)));
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -15,8 +15,8 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { by, element, protractor } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ProcessDetailsPage {
|
||||
|
||||
@@ -49,88 +49,88 @@ export class ProcessDetailsPage {
|
||||
taskTitle = element(by.css('h2[class="adf-activiti-task-details__header"]'));
|
||||
|
||||
checkDetailsAreDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.processStatusField);
|
||||
Util.waitUntilElementIsVisible(this.processEndDateField);
|
||||
Util.waitUntilElementIsVisible(this.processCategoryField);
|
||||
Util.waitUntilElementIsVisible(this.processBusinessKeyField);
|
||||
Util.waitUntilElementIsVisible(this.processCreatedByField);
|
||||
Util.waitUntilElementIsVisible(this.processCreatedField);
|
||||
Util.waitUntilElementIsVisible(this.processIdField);
|
||||
Util.waitUntilElementIsVisible(this.processDescription);
|
||||
Util.waitUntilElementIsVisible(this.showDiagramButton);
|
||||
Util.waitUntilElementIsVisible(this.activeTask);
|
||||
Util.waitUntilElementIsVisible(this.cancelProcessButton);
|
||||
Util.waitUntilElementIsVisible(this.commentInput);
|
||||
Util.waitUntilElementIsVisible(this.auditLogButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processStatusField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processEndDateField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processCategoryField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processBusinessKeyField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processCreatedByField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processCreatedField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processIdField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processDescription);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.showDiagramButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeTask);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cancelProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.auditLogButton);
|
||||
return this;
|
||||
}
|
||||
|
||||
checkProcessTitleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.processTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processTitle);
|
||||
return this.processTitle.getText();
|
||||
}
|
||||
|
||||
checkProcessDetailsMessage() {
|
||||
Util.waitUntilElementIsVisible(this.processDetailsMessage);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processDetailsMessage);
|
||||
return this.processDetailsMessage.getText();
|
||||
}
|
||||
|
||||
getProcessStatus() {
|
||||
Util.waitUntilElementIsVisible(this.processStatusField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processStatusField);
|
||||
return this.processStatusField.getText();
|
||||
}
|
||||
|
||||
getEndDate() {
|
||||
Util.waitUntilElementIsVisible(this.processEndDateField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processEndDateField);
|
||||
return this.processEndDateField.getText();
|
||||
}
|
||||
|
||||
getProcessCategory() {
|
||||
Util.waitUntilElementIsVisible(this.processCategoryField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processCategoryField);
|
||||
return this.processCategoryField.getText();
|
||||
}
|
||||
|
||||
getBusinessKey() {
|
||||
Util.waitUntilElementIsVisible(this.processBusinessKeyField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processBusinessKeyField);
|
||||
return this.processBusinessKeyField.getText();
|
||||
}
|
||||
|
||||
getCreatedBy() {
|
||||
Util.waitUntilElementIsVisible(this.processCreatedByField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processCreatedByField);
|
||||
return this.processCreatedByField.getText();
|
||||
}
|
||||
|
||||
getCreated() {
|
||||
Util.waitUntilElementIsVisible(this.processCreatedField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processCreatedField);
|
||||
return this.processCreatedField.getText();
|
||||
}
|
||||
|
||||
getId() {
|
||||
Util.waitUntilElementIsVisible(this.processIdField);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processIdField);
|
||||
return this.processIdField.getText();
|
||||
}
|
||||
|
||||
getProcessDescription() {
|
||||
Util.waitUntilElementIsVisible(this.processDescription);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processDescription);
|
||||
return this.processDescription.getText();
|
||||
}
|
||||
|
||||
clickShowDiagram() {
|
||||
Util.waitUntilElementIsVisible(this.showDiagramButton);
|
||||
Util.waitUntilElementIsClickable(this.showDiagramButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.showDiagramButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.showDiagramButton);
|
||||
this.showDiagramButton.click();
|
||||
Util.waitUntilElementIsVisible(this.diagramCanvas);
|
||||
Util.waitUntilElementIsVisible(this.backButton);
|
||||
Util.waitUntilElementIsClickable(this.backButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.diagramCanvas);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.backButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.backButton);
|
||||
this.backButton.click();
|
||||
}
|
||||
|
||||
checkShowDiagramIsDisabled() {
|
||||
Util.waitUntilElementIsVisible(this.showDiagramButtonDisabled);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.showDiagramButtonDisabled);
|
||||
}
|
||||
|
||||
addComment(comment) {
|
||||
Util.waitUntilElementIsVisible(this.commentInput);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.commentInput);
|
||||
this.commentInput.sendKeys(comment);
|
||||
this.commentInput.sendKeys(protractor.Key.ENTER);
|
||||
return this;
|
||||
@@ -138,37 +138,37 @@ export class ProcessDetailsPage {
|
||||
|
||||
checkCommentIsDisplayed(comment) {
|
||||
const commentInserted = element(by.cssContainingText('div[id="comment-message"]', comment));
|
||||
Util.waitUntilElementIsVisible(commentInserted);
|
||||
BrowserVisibility.waitUntilElementIsVisible(commentInserted);
|
||||
return this;
|
||||
}
|
||||
|
||||
clickAuditLogButton() {
|
||||
Util.waitUntilElementIsVisible(this.auditLogButton);
|
||||
Util.waitUntilElementIsClickable(this.auditLogButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.auditLogButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.auditLogButton);
|
||||
this.auditLogButton.click();
|
||||
}
|
||||
|
||||
clickCancelProcessButton() {
|
||||
Util.waitUntilElementIsVisible(this.cancelProcessButton);
|
||||
Util.waitUntilElementIsClickable(this.cancelProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.cancelProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.cancelProcessButton);
|
||||
this.cancelProcessButton.click();
|
||||
}
|
||||
|
||||
clickOnActiveTask() {
|
||||
Util.waitUntilElementIsVisible(this.activeTask);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.activeTask);
|
||||
return this.activeTask.click();
|
||||
}
|
||||
|
||||
clickOnCompletedTask() {
|
||||
Util.waitUntilElementIsClickable(this.completedTask);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.completedTask);
|
||||
return this.completedTask.click();
|
||||
}
|
||||
|
||||
checkActiveTaskTitleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.taskTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskTitle);
|
||||
}
|
||||
|
||||
checkProcessDetailsCard() {
|
||||
Util.waitUntilElementIsVisible(this.propertiesList);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.propertiesList);
|
||||
}
|
||||
}
|
||||
|
@@ -15,10 +15,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { element, by } from 'protractor';
|
||||
import { StartProcessPage } from './startProcessPage';
|
||||
import { DataTableComponentPage } from '../dataTableComponentPage';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ProcessFiltersPage {
|
||||
|
||||
@@ -44,52 +44,52 @@ export class ProcessFiltersPage {
|
||||
}
|
||||
|
||||
clickRunningFilterButton() {
|
||||
Util.waitUntilElementIsVisible(this.runningFilter);
|
||||
Util.waitUntilElementIsClickable(this.runningFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.runningFilter);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.runningFilter);
|
||||
return this.runningFilter.click();
|
||||
}
|
||||
|
||||
clickCompletedFilterButton() {
|
||||
Util.waitUntilElementIsVisible(this.completedFilter);
|
||||
Util.waitUntilElementIsClickable(this.completedFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.completedFilter);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.completedFilter);
|
||||
this.completedFilter.click();
|
||||
expect(this.completedFilter.isEnabled()).toBe(true);
|
||||
}
|
||||
|
||||
clickAllFilterButton() {
|
||||
Util.waitUntilElementIsVisible(this.allFilter);
|
||||
Util.waitUntilElementIsClickable(this.allFilter);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.allFilter);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.allFilter);
|
||||
this.allFilter.click();
|
||||
expect(this.allFilter.isEnabled()).toBe(true);
|
||||
}
|
||||
|
||||
clickCreateProcessButton() {
|
||||
Util.waitUntilElementIsOnPage(this.accordionMenu);
|
||||
Util.waitUntilElementIsVisible(this.processesPage);
|
||||
Util.waitUntilElementIsPresent(this.createProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsOnPage(this.accordionMenu);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processesPage);
|
||||
BrowserVisibility.waitUntilElementIsPresent(this.createProcessButton);
|
||||
this.createProcessButton.click();
|
||||
}
|
||||
|
||||
clickNewProcessDropdown() {
|
||||
Util.waitUntilElementIsOnPage(this.buttonWindow);
|
||||
Util.waitUntilElementIsVisible(this.newProcessButton);
|
||||
Util.waitUntilElementIsClickable(this.newProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsOnPage(this.buttonWindow);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.newProcessButton);
|
||||
BrowserVisibility.waitUntilElementIsClickable(this.newProcessButton);
|
||||
this.newProcessButton.click();
|
||||
}
|
||||
|
||||
checkNoContentMessage() {
|
||||
return Util.waitUntilElementIsVisible(this.noContentMessage);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(this.noContentMessage);
|
||||
}
|
||||
|
||||
selectFromProcessList(title) {
|
||||
const processName = element.all(by.css(`div[data-automation-id="text_${title}"]`)).first();
|
||||
Util.waitUntilElementIsVisible(processName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(processName);
|
||||
processName.click();
|
||||
}
|
||||
|
||||
checkFilterIsHighlighted(filterName) {
|
||||
const processNameHighlighted = element(by.css(`mat-list-item.adf-active span[data-automation-id='${filterName}_filter']`));
|
||||
Util.waitUntilElementIsVisible(processNameHighlighted);
|
||||
BrowserVisibility.waitUntilElementIsVisible(processNameHighlighted);
|
||||
}
|
||||
|
||||
numberOfProcessRows() {
|
||||
@@ -97,7 +97,7 @@ export class ProcessFiltersPage {
|
||||
}
|
||||
|
||||
waitForTableBody() {
|
||||
Util.waitUntilElementIsVisible(this.tableBody);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.tableBody);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -115,26 +115,26 @@ export class ProcessFiltersPage {
|
||||
|
||||
checkFilterIsDisplayed(name) {
|
||||
const filterName = element(by.css(`span[data-automation-id='${name}_filter']`));
|
||||
return Util.waitUntilElementIsVisible(filterName);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(filterName);
|
||||
}
|
||||
|
||||
checkFilterHasNoIcon(name) {
|
||||
const filterName = element(by.css(`span[data-automation-id='${name}_filter']`));
|
||||
Util.waitUntilElementIsVisible(filterName);
|
||||
return Util.waitUntilElementIsNotOnPage(filterName.element(this.processIcon));
|
||||
BrowserVisibility.waitUntilElementIsVisible(filterName);
|
||||
return BrowserVisibility.waitUntilElementIsNotOnPage(filterName.element(this.processIcon));
|
||||
}
|
||||
|
||||
getFilterIcon(name) {
|
||||
const filterName = element(by.css(`span[data-automation-id='${name}_filter']`));
|
||||
Util.waitUntilElementIsVisible(filterName);
|
||||
BrowserVisibility.waitUntilElementIsVisible(filterName);
|
||||
const icon = filterName.element(this.processIcon);
|
||||
Util.waitUntilElementIsVisible(icon);
|
||||
BrowserVisibility.waitUntilElementIsVisible(icon);
|
||||
return icon.getText();
|
||||
}
|
||||
|
||||
checkFilterIsNotDisplayed(name) {
|
||||
const filterName = element(by.css(`span[data-automation-id='${name}_filter']`));
|
||||
return Util.waitUntilElementIsNotVisible(filterName);
|
||||
return BrowserVisibility.waitUntilElementIsNotVisible(filterName);
|
||||
}
|
||||
|
||||
checkProcessesSortedByNameAsc() {
|
||||
|
@@ -15,7 +15,7 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
import { element, by } from 'protractor';
|
||||
|
||||
export class ProcessListPage {
|
||||
@@ -24,12 +24,12 @@ export class ProcessListPage {
|
||||
processInstanceList = element(by.css('adf-process-instance-list'));
|
||||
|
||||
checkProcessListTitleIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.processListTitle);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processListTitle);
|
||||
return this.processListTitle.getText();
|
||||
}
|
||||
|
||||
checkProcessListIsDisplayed() {
|
||||
Util.waitUntilElementIsVisible(this.processInstanceList);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.processInstanceList);
|
||||
}
|
||||
|
||||
}
|
||||
|
@@ -15,10 +15,10 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { Util } from '../../../util/util';
|
||||
import { AppNavigationBarPage } from './appNavigationBarPage';
|
||||
|
||||
import { element, by } from 'protractor';
|
||||
import { BrowserVisibility } from '@alfresco/adf-testing';
|
||||
|
||||
export class ProcessServicesPage {
|
||||
|
||||
@@ -28,52 +28,52 @@ export class ProcessServicesPage {
|
||||
descriptionLocator = by.css('mat-card-subtitle[class*="subtitle"]');
|
||||
|
||||
checkApsContainer() {
|
||||
Util.waitUntilElementIsVisible(this.apsAppsContainer);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.apsAppsContainer);
|
||||
}
|
||||
|
||||
goToApp(applicationName) {
|
||||
const app = element(by.css('mat-card[title="' + applicationName + '"]'));
|
||||
Util.waitUntilElementIsVisible(app);
|
||||
BrowserVisibility.waitUntilElementIsVisible(app);
|
||||
app.click();
|
||||
return new AppNavigationBarPage();
|
||||
}
|
||||
|
||||
goToTaskApp() {
|
||||
Util.waitUntilElementIsVisible(this.taskApp);
|
||||
BrowserVisibility.waitUntilElementIsVisible(this.taskApp);
|
||||
this.taskApp.click();
|
||||
return new AppNavigationBarPage();
|
||||
}
|
||||
|
||||
getAppIconType(applicationName) {
|
||||
const app = element(by.css('mat-card[title="' + applicationName + '"]'));
|
||||
Util.waitUntilElementIsVisible(app);
|
||||
BrowserVisibility.waitUntilElementIsVisible(app);
|
||||
const iconType = app.element(this.iconTypeLocator);
|
||||
Util.waitUntilElementIsVisible(iconType);
|
||||
BrowserVisibility.waitUntilElementIsVisible(iconType);
|
||||
return iconType.getText();
|
||||
}
|
||||
|
||||
getBackgroundColor(applicationName) {
|
||||
const app = element(by.css('mat-card[title="' + applicationName + '"]'));
|
||||
Util.waitUntilElementIsVisible(app);
|
||||
BrowserVisibility.waitUntilElementIsVisible(app);
|
||||
return app.getCssValue('background-color');
|
||||
}
|
||||
|
||||
getDescription(applicationName) {
|
||||
const app = element(by.css('mat-card[title="' + applicationName + '"]'));
|
||||
Util.waitUntilElementIsVisible(app);
|
||||
BrowserVisibility.waitUntilElementIsVisible(app);
|
||||
const description = app.element(this.descriptionLocator);
|
||||
Util.waitUntilElementIsVisible(description);
|
||||
BrowserVisibility.waitUntilElementIsVisible(description);
|
||||
return description.getText();
|
||||
}
|
||||
|
||||
checkAppIsNotDisplayed(applicationName) {
|
||||
const app = element(by.css('mat-card[title="' + applicationName + '"]'));
|
||||
return Util.waitUntilElementIsNotOnPage(app);
|
||||
return BrowserVisibility.waitUntilElementIsNotOnPage(app);
|
||||
}
|
||||
|
||||
checkAppIsDisplayed(applicationName) {
|
||||
const app = element(by.css('mat-card[title="' + applicationName + '"]'));
|
||||
return Util.waitUntilElementIsVisible(app);
|
||||
return BrowserVisibility.waitUntilElementIsVisible(app);
|
||||
}
|
||||
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user