From 3afc4f48599f15091c3f0598cd03a7b40434478c Mon Sep 17 00:00:00 2001 From: rafalszmit <40626242+rafalszmit@users.noreply.github.com> Date: Mon, 14 Feb 2022 23:20:14 +0100 Subject: [PATCH] [AAE-7355] automate manual C599174 (#2451) * [AAE-7355] automate manual C599174 * C306959 ci flakiness - click insead of Enter --- .../info-drawer/file-folder-properties.test.ts | 17 +++++++++++++++++ .../src/components/info-drawer/info-drawer.ts | 5 ++++- .../src/components/search/search-input.ts | 6 +++--- 3 files changed, 24 insertions(+), 4 deletions(-) diff --git a/e2e/suites/info-drawer/file-folder-properties.test.ts b/e2e/suites/info-drawer/file-folder-properties.test.ts index 51c715b08..a65362acc 100755 --- a/e2e/suites/info-drawer/file-folder-properties.test.ts +++ b/e2e/suites/info-drawer/file-folder-properties.test.ts @@ -251,5 +251,22 @@ describe('File / Folder properties', () => { expect(await propertiesTab.isEditPropertiesButtonEnabled()).toBe(true, 'Edit button not enabled'); expect(await propertiesTab.isLessInfoButtonEnabled()).toBe(true, 'Less information button not enabled'); }); + + it('[C599174] Should be able to make the files/folders info drawer expandable as for Sites', async () => { + await dataTable.selectItem(file1.name); + await BrowserActions.click(page.toolbar.viewDetailsButton); + await infoDrawer.waitForInfoDrawerToOpen(); + await infoDrawer.expandDetailsButton.click(); + await expect(await infoDrawer.expandedDetailsPermissionsTab.isPresent()).toBe(true, 'Permissions tab is not displayed'); + + await page.clickPersonalFilesAndWait(); + await dataTable.selectItem(parent); + await BrowserActions.rightClick(dataTable.selectedRow); + await dataTable.menu.clickMenuItem('Permissions'); + const expectedSelectedTabTitle = 'permissions'; + const actualSelectedTabTitle = await infoDrawer.selectedTab.getText(); + + await expect(actualSelectedTabTitle.toLowerCase()).toEqual(expectedSelectedTabTitle); + }); }); }); diff --git a/projects/aca-testing-shared/src/components/info-drawer/info-drawer.ts b/projects/aca-testing-shared/src/components/info-drawer/info-drawer.ts index 5a524048e..58764514f 100755 --- a/projects/aca-testing-shared/src/components/info-drawer/info-drawer.ts +++ b/projects/aca-testing-shared/src/components/info-drawer/info-drawer.ts @@ -24,7 +24,7 @@ */ import { by, browser } from 'protractor'; -import { BrowserActions, BrowserVisibility, Logger } from '@alfresco/adf-testing'; +import { BrowserActions, BrowserVisibility, Logger, TestElement } from '@alfresco/adf-testing'; import { Component } from '../component'; import { CommentsTab } from './info-drawer-comments-tab'; import { LibraryMetadata } from './info-drawer-metadata-library'; @@ -43,6 +43,9 @@ export class InfoDrawer extends Component { tabActiveContent = this.byCss('.mat-tab-body-active .mat-tab-body-content adf-dynamic-tab'); nextButton = this.byCss('.mat-tab-header-pagination-after .mat-tab-header-pagination-chevron'); previousButton = this.byCss('.mat-tab-header-pagination-before .mat-tab-header-pagination-chevron'); + expandDetailsButton = TestElement.byCss(`button[title='Expand']`); + selectedTab = TestElement.byCss(`.mat-tab-list [aria-selected='true'] div`); + expandedDetailsPermissionsTab = TestElement.byText('.acs-details-container .mat-tab-label-content', 'Permissions'); constructor(ancestor?: string) { super('adf-info-drawer', ancestor); diff --git a/projects/aca-testing-shared/src/components/search/search-input.ts b/projects/aca-testing-shared/src/components/search/search-input.ts index 083533522..54723dc70 100755 --- a/projects/aca-testing-shared/src/components/search/search-input.ts +++ b/projects/aca-testing-shared/src/components/search/search-input.ts @@ -23,7 +23,7 @@ * along with Alfresco. If not, see . */ -import { browser, by, protractor } from 'protractor'; +import { browser, by } from 'protractor'; import { Component } from '../component'; import { waitForPresence, waitElement } from '../../utilities/utils'; import { BrowserActions, BrowserVisibility, TestElement } from '@alfresco/adf-testing'; @@ -152,8 +152,8 @@ export class SearchInput extends Component { } async searchFor(text: string) { - await BrowserVisibility.waitUntilElementIsClickable(this.searchInput.elementFinder, 1000); + await BrowserVisibility.waitUntilElementIsClickable(this.searchInput.elementFinder); await this.searchInput.typeText(text); - await this.searchInput.elementFinder.sendKeys(protractor.Key.ENTER); + await BrowserActions.click(this.searchButton); } }