mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
Improve attach file widget PO (#5973)
* Improve attach file widget * Fix import * Fix import * no message
This commit is contained in:
@@ -19,6 +19,7 @@ import { browser, by, element } from 'protractor';
|
|||||||
import {
|
import {
|
||||||
ApiService,
|
ApiService,
|
||||||
BreadcrumbPage,
|
BreadcrumbPage,
|
||||||
|
BreadcrumbDropdownPage,
|
||||||
ContentNodeSelectorDialogPage,
|
ContentNodeSelectorDialogPage,
|
||||||
LoginPage,
|
LoginPage,
|
||||||
PaginationPage,
|
PaginationPage,
|
||||||
@@ -31,7 +32,6 @@ import {
|
|||||||
import { ContentServicesPage } from '../../core/pages/content-services.page';
|
import { ContentServicesPage } from '../../core/pages/content-services.page';
|
||||||
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
|
import { NavigationBarPage } from '../../core/pages/navigation-bar.page';
|
||||||
import { FileModel } from '../../models/ACS/file.model';
|
import { FileModel } from '../../models/ACS/file.model';
|
||||||
import { BreadCrumbDropdownPage } from '../pages/breadcrumb/bread-crumb-dropdown.page';
|
|
||||||
import { InfinitePaginationPage } from '../../core/pages/infinite-pagination.page';
|
import { InfinitePaginationPage } from '../../core/pages/infinite-pagination.page';
|
||||||
import { FolderModel } from '../../models/ACS/folder.model';
|
import { FolderModel } from '../../models/ACS/folder.model';
|
||||||
|
|
||||||
@@ -43,7 +43,7 @@ describe('Document List Component - Actions', () => {
|
|||||||
const contentListPage = contentServicesPage.getDocumentList();
|
const contentListPage = contentServicesPage.getDocumentList();
|
||||||
const contentNodeSelector = new ContentNodeSelectorDialogPage();
|
const contentNodeSelector = new ContentNodeSelectorDialogPage();
|
||||||
const paginationPage = new PaginationPage();
|
const paginationPage = new PaginationPage();
|
||||||
const breadCrumbDropdownPage = new BreadCrumbDropdownPage();
|
const breadCrumbDropdownPage = new BreadcrumbDropdownPage();
|
||||||
const breadCrumbPage = new BreadcrumbPage();
|
const breadCrumbPage = new BreadcrumbPage();
|
||||||
const viewerPage = new ViewerPage();
|
const viewerPage = new ViewerPage();
|
||||||
const apiService = new ApiService();
|
const apiService = new ApiService();
|
||||||
|
@@ -21,6 +21,7 @@ import { TasksCloudDemoPage } from './pages/tasks-cloud-demo.page';
|
|||||||
import {
|
import {
|
||||||
LoginPage,
|
LoginPage,
|
||||||
AppListCloudPage,
|
AppListCloudPage,
|
||||||
|
BreadcrumbDropdownPage,
|
||||||
StringUtil,
|
StringUtil,
|
||||||
StartTasksCloudPage,
|
StartTasksCloudPage,
|
||||||
ApiService,
|
ApiService,
|
||||||
@@ -43,7 +44,6 @@ import { StartProcessCloudConfiguration } from './config/start-process-cloud.con
|
|||||||
import { ProcessCloudDemoPage } from './pages/process-cloud-demo.page';
|
import { ProcessCloudDemoPage } from './pages/process-cloud-demo.page';
|
||||||
import { ProcessDetailsCloudDemoPage } from './pages/process-details-cloud-demo.page';
|
import { ProcessDetailsCloudDemoPage } from './pages/process-details-cloud-demo.page';
|
||||||
import { FileModel } from '../models/ACS/file.model';
|
import { FileModel } from '../models/ACS/file.model';
|
||||||
import { BreadCrumbDropdownPage } from '../content-services/pages/breadcrumb/bread-crumb-dropdown.page';
|
|
||||||
import CONSTANTS = require('../util/constants');
|
import CONSTANTS = require('../util/constants');
|
||||||
|
|
||||||
describe('Start Task Form', () => {
|
describe('Start Task Form', () => {
|
||||||
@@ -55,7 +55,7 @@ describe('Start Task Form', () => {
|
|||||||
const tasksCloudDemoPage = new TasksCloudDemoPage();
|
const tasksCloudDemoPage = new TasksCloudDemoPage();
|
||||||
const startTask = new StartTasksCloudPage();
|
const startTask = new StartTasksCloudPage();
|
||||||
const contentNodeSelectorDialogPage = new ContentNodeSelectorDialogPage();
|
const contentNodeSelectorDialogPage = new ContentNodeSelectorDialogPage();
|
||||||
const breadCrumbDropdownPage = new BreadCrumbDropdownPage();
|
const breadCrumbDropdownPage = new BreadcrumbDropdownPage();
|
||||||
const processDetailsCloudDemoPage = new ProcessDetailsCloudDemoPage();
|
const processDetailsCloudDemoPage = new ProcessDetailsCloudDemoPage();
|
||||||
const widget = new ProcessCloudWidgetPage();
|
const widget = new ProcessCloudWidgetPage();
|
||||||
const startProcessPage = new StartProcessCloudPage();
|
const startProcessPage = new StartProcessCloudPage();
|
||||||
|
@@ -21,6 +21,7 @@ import { DocumentListPage } from '../pages/document-list.page';
|
|||||||
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
import { BrowserVisibility } from '../../core/utils/browser-visibility';
|
||||||
import { BrowserActions } from '../../core/utils/browser-actions';
|
import { BrowserActions } from '../../core/utils/browser-actions';
|
||||||
import { DropdownPage } from '../../core/pages/material/dropdown.page';
|
import { DropdownPage } from '../../core/pages/material/dropdown.page';
|
||||||
|
import { BreadcrumbDropdownPage } from '../pages/breadcrumb/breadcrumb-dropdown.page';
|
||||||
|
|
||||||
export class ContentNodeSelectorDialogPage {
|
export class ContentNodeSelectorDialogPage {
|
||||||
dialog = element(by.css(`adf-content-node-selector`));
|
dialog = element(by.css(`adf-content-node-selector`));
|
||||||
@@ -34,6 +35,7 @@ export class ContentNodeSelectorDialogPage {
|
|||||||
contentList = new DocumentListPage(this.dialog);
|
contentList = new DocumentListPage(this.dialog);
|
||||||
dataTable = this.contentList.dataTablePage();
|
dataTable = this.contentList.dataTablePage();
|
||||||
siteListDropdown = new DropdownPage(this.dialog.element(by.css(`mat-select[data-automation-id='site-my-files-option']`)));
|
siteListDropdown = new DropdownPage(this.dialog.element(by.css(`mat-select[data-automation-id='site-my-files-option']`)));
|
||||||
|
breadcrumbDropdownPage = new BreadcrumbDropdownPage();
|
||||||
|
|
||||||
async checkDialogIsDisplayed(): Promise<void> {
|
async checkDialogIsDisplayed(): Promise<void> {
|
||||||
await BrowserVisibility.waitUntilElementIsVisible(this.dialog);
|
await BrowserVisibility.waitUntilElementIsVisible(this.dialog);
|
||||||
@@ -132,6 +134,8 @@ export class ContentNodeSelectorDialogPage {
|
|||||||
|
|
||||||
async attachFileFromLocal(fileName: string, fileLocation: string): Promise<void> {
|
async attachFileFromLocal(fileName: string, fileLocation: string): Promise<void> {
|
||||||
await this.checkDialogIsDisplayed();
|
await this.checkDialogIsDisplayed();
|
||||||
|
await this.dataTable.waitForTableBody();
|
||||||
|
await this.breadcrumbDropdownPage.checkCurrentFolderIsDisplayed();
|
||||||
|
|
||||||
await browser.setFileDetector(new remote.FileDetector());
|
await browser.setFileDetector(new remote.FileDetector());
|
||||||
const uploadButton = element(by.css('adf-upload-button input'));
|
const uploadButton = element(by.css('adf-upload-button input'));
|
||||||
|
@@ -16,9 +16,11 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { element, by } from 'protractor';
|
import { element, by } from 'protractor';
|
||||||
import { BrowserActions, DropdownPage } from '@alfresco/adf-testing';
|
import { BrowserActions } from '../../../core/utils/browser-actions';
|
||||||
|
import { BrowserVisibility } from '../../../core/utils/browser-visibility';
|
||||||
|
import { DropdownPage } from '../../../core/pages/material/dropdown.page';
|
||||||
|
|
||||||
export class BreadCrumbDropdownPage {
|
export class BreadcrumbDropdownPage {
|
||||||
|
|
||||||
breadCrumb = element(by.css(`adf-dropdown-breadcrumb[data-automation-id='content-node-selector-content-breadcrumb']`));
|
breadCrumb = element(by.css(`adf-dropdown-breadcrumb[data-automation-id='content-node-selector-content-breadcrumb']`));
|
||||||
parentFolder = this.breadCrumb.element(by.css(`button[data-automation-id='dropdown-breadcrumb-trigger']`));
|
parentFolder = this.breadCrumb.element(by.css(`button[data-automation-id='dropdown-breadcrumb-trigger']`));
|
||||||
@@ -41,4 +43,8 @@ export class BreadCrumbDropdownPage {
|
|||||||
async getTextOfCurrentFolder(): Promise<string> {
|
async getTextOfCurrentFolder(): Promise<string> {
|
||||||
return BrowserActions.getText(this.currentFolder);
|
return BrowserActions.getText(this.currentFolder);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async checkCurrentFolderIsDisplayed(): Promise<void> {
|
||||||
|
await BrowserVisibility.waitUntilElementIsVisible(this.currentFolder);
|
||||||
|
}
|
||||||
}
|
}
|
@@ -0,0 +1,18 @@
|
|||||||
|
/*!
|
||||||
|
* @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.
|
||||||
|
*/
|
||||||
|
|
||||||
|
export * from './breadcrumb-dropdown.page';
|
@@ -19,4 +19,5 @@ export * from './like.page';
|
|||||||
export * from './rate.page';
|
export * from './rate.page';
|
||||||
export * from './document-list.page';
|
export * from './document-list.page';
|
||||||
|
|
||||||
|
export * from './breadcrumb/public-api';
|
||||||
export * from './search/public-api';
|
export * from './search/public-api';
|
||||||
|
@@ -121,6 +121,10 @@ export class TaskListCloudComponentPage {
|
|||||||
return BrowserActions.getText(this.noTasksFound);
|
return BrowserActions.getText(this.noTasksFound);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async checkNoTasksFoundMessageIsDisplayed(): Promise<void> {
|
||||||
|
await BrowserVisibility.waitUntilElementIsVisible(this.noTasksFound);
|
||||||
|
}
|
||||||
|
|
||||||
async getAllRowsNameColumn() {
|
async getAllRowsNameColumn() {
|
||||||
return this.dataTable.getAllRowsColumnValues(column.name);
|
return this.dataTable.getAllRowsColumnValues(column.name);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user