mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
Disable control flow e2e ADF (#4954)
* update project script possible different JS-API * first commit no controll flow * second commit no controll flow * third commit no controll flow * 4 commit no controll flow * 5 commit no controll flow * 6 commit no controll flow * 7 commit no controll flow * 8 commit no controll flow * 9 commit no controll flow * 10 commit no controll flow * 11 commit no controll flow * 12 commit no controll flow * 13 commit no controll flow * 14 commit no controll flow * 15 commit no controll flow * 16 commit no controll flow * 17 commit no controll flow * 18 commit no controll flow * 19 commit no controll flow * 20 commit no controll flow * remove wdpromise, protractor promise and deferred promises * - fixed some incorrect “expect” calls - fixed some matchers - removed “return this;” when not needed - added a few more await-s * forgot a file * fix some failing tests * replaced driver calls with browser calls and enabled back waitForAngular * fix rightClick methods and hopefully some tests * fix settings-component * some more fixes for core and content tests * try to fix some more issues * linting * revert some changes, allowing download on headless chrome won’t work with multiple browser instances * fixes for Search tests * try to remove some wait calls * fix build * increase allScriptsTimeout and try another protractor and web driver version * improve navigation methods * some fixes for notification history and login sso * forgot a space * fix packages and enable some screenshots * navigation bar fixes * fix some test * some fixes for notification history and navigation bar use correct visibility method in attachFileWidget test * fix searching and another fix for navigation * try solve sso login * some more fixes * refactor async forEach into for..of * try fix for search tests * resolve rebabse problems * remove install * fix lint * fix core e2e * fix core e2e * fix core e2e * fix ps tests * fix some tests * fix core e2e * fix core e2e * fix core * fix some issues PS * fix core * fix core * fix some ps test * fix rebase issues * remove save * fix url regressed after rebase * fix url regressed after rebase * fix ps and core * fix lint * more parallel e2e ps * fix some ps cloud test * some cloud fix * fix lint * fix some test * remove files to be ignored * out-tsc * improve one cs test * fix candidate base app * fix ps test * remove click function * clean methods alrady present in browser action * try ugly wait * move wait * remove duplicate call * remove underscore * fix after review * fix imports * minor cosmetic fixes * fix comments test
This commit is contained in:
@@ -54,7 +54,7 @@ describe('Search Checklist Component', () => {
|
||||
|
||||
let createdFile, createdFolder;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
@@ -64,16 +64,18 @@ describe('Search Checklist Component', () => {
|
||||
createdFolder = await this.alfrescoJsApi.nodes.addNode('-my-', { name: nodeNames.folder, nodeType: 'cm:folder' });
|
||||
createdFile = await this.alfrescoJsApi.nodes.addNode('-my-', { name: nodeNames.document, nodeType: 'cm:content' });
|
||||
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=' + randomName + '');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
beforeEach(async () => {
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await BrowserActions.getUrl(`${browser.params.testConfig.adf.url}/search;q=${randomName}`);
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await uploadActions.deleteFileOrFolder(createdFile.entry.id);
|
||||
@@ -81,45 +83,44 @@ describe('Search Checklist Component', () => {
|
||||
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C276991] Should be able to click between options and Clear All button', () => {
|
||||
searchFiltersPage.checkCheckListFilterIsDisplayed();
|
||||
searchFiltersPage.checkCheckListFilterIsCollapsed();
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
it('[C276991] Should be able to click between options and Clear All button', async() => {
|
||||
await searchFiltersPage.checkCheckListFilterIsDisplayed();
|
||||
await searchFiltersPage.checkCheckListFilterIsCollapsed();
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.document);
|
||||
searchFiltersPage.checkListFiltersPage().checkClearAllButtonIsDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.document);
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().checkClearAllButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.folder);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickClearAllButton();
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().clickClearAllButton();
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.folder);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.document);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.document);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.document);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsNotSelected(filterType.folder);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
});
|
||||
|
||||
describe('configuration change', () => {
|
||||
@@ -130,7 +131,7 @@ describe('Search Checklist Component', () => {
|
||||
});
|
||||
|
||||
it('[C277143] Should be able to click show more/less button with pageSize set as default', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
for (let numberOfOptions = 0; numberOfOptions < 8; numberOfOptions++) {
|
||||
jsonFile.categories[1].component.settings.options.push({
|
||||
@@ -140,32 +141,33 @@ describe('Search Checklist Component', () => {
|
||||
}
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
browser.sleep(2000);
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickShowMoreButton();
|
||||
await searchFiltersPage.checkListFiltersPage().clickShowMoreButton();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickShowLessButton();
|
||||
await searchFiltersPage.checkListFiltersPage().clickShowLessButton();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
});
|
||||
|
||||
it('[C277144] Should be able to click show more/less button with pageSize set with a custom value', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[1].component.settings.pageSize = 10;
|
||||
|
||||
@@ -178,41 +180,47 @@ describe('Search Checklist Component', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
jsonFile.categories[1].component.settings.pageSize = 11;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[1].component.settings.pageSize = 9;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(9);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(9);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C277145] Should be able to click show more/less button with pageSize set to zero', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[1].component.settings.pageSize = 0;
|
||||
|
||||
@@ -225,41 +233,45 @@ describe('Search Checklist Component', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickShowMoreButton();
|
||||
await searchFiltersPage.checkListFiltersPage().clickShowMoreButton();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
delete jsonFile.categories[1].component.settings.pageSize;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickShowMoreButton();
|
||||
await searchFiltersPage.checkListFiltersPage().clickShowMoreButton();
|
||||
|
||||
expect(searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.checkListFiltersPage().getCheckListOptionsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.checkListFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
});
|
||||
|
||||
});
|
||||
@@ -272,36 +284,37 @@ describe('Search Checklist Component', () => {
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
});
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C277018] Should be able to change the operator', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[1].component.settings.operator = 'AND';
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsSelected(filterType.folder);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.document);
|
||||
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
});
|
||||
|
||||
it('[C277019] Should be able to add new properties with different types', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[1].component.settings.options.push({
|
||||
'name': filterType.custom,
|
||||
@@ -310,23 +323,25 @@ describe('Search Checklist Component', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.folder);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.document);
|
||||
searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.custom);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().checkCheckListOptionIsDisplayed(filterType.custom);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.custom);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.custom);
|
||||
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.document);
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.document);
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption(filterType.folder);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
});
|
||||
});
|
||||
|
||||
|
@@ -34,182 +34,178 @@ describe('Search Date Range Filter', () => {
|
||||
const dateRangeFilter = searchFilters.createdDateRangeFilterPage();
|
||||
const searchResults = new SearchResultsPage();
|
||||
const datePicker = new DatePickerPage();
|
||||
const navigationBarPage = new NavigationBarPage();
|
||||
const navigationBar = new NavigationBarPage();
|
||||
const dataTable = new DataTableComponentPage();
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
hostEcm: browser.params.testConfig.adf_acs.host
|
||||
});
|
||||
|
||||
loginPage.loginToContentServices(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await loginPage.loginToContentServices(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
searchFilters.checkCreatedRangeFilterIsDisplayed()
|
||||
.clickCreatedRangeFilterHeader()
|
||||
.checkCreatedRangeFilterIsExpanded();
|
||||
beforeEach(async () => {
|
||||
await searchFilters.checkCreatedRangeFilterIsDisplayed();
|
||||
await searchFilters.clickCreatedRangeFilterHeader();
|
||||
await searchFilters.checkCreatedRangeFilterIsExpanded();
|
||||
});
|
||||
|
||||
afterEach(async (done) => {
|
||||
afterEach(async () => {
|
||||
await browser.refresh();
|
||||
done();
|
||||
|
||||
});
|
||||
|
||||
it('[C277106] Should display default values for Date Range widget', () => {
|
||||
dateRangeFilter.checkFromFieldIsDisplayed()
|
||||
.checkFromDateToggleIsDisplayed()
|
||||
.checkToFieldIsDisplayed()
|
||||
.checkToDateToggleIsDisplayed()
|
||||
.checkApplyButtonIsDisplayed()
|
||||
.checkApplyButtonIsDisabled()
|
||||
.checkClearButtonIsDisplayed();
|
||||
it('[C277106] Should display default values for Date Range widget', async () => {
|
||||
await dateRangeFilter.checkFromFieldIsDisplayed();
|
||||
await dateRangeFilter.checkFromDateToggleIsDisplayed();
|
||||
await dateRangeFilter.checkToFieldIsDisplayed();
|
||||
await dateRangeFilter.checkToDateToggleIsDisplayed();
|
||||
await dateRangeFilter.checkApplyButtonIsDisplayed();
|
||||
await dateRangeFilter.checkApplyButtonIsDisabled();
|
||||
await dateRangeFilter.checkClearButtonIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C277104] Should be able to set dates using date pickers', () => {
|
||||
dateRangeFilter.checkFromDateToggleIsDisplayed().openFromDatePicker()
|
||||
.selectTodayDate();
|
||||
browser.controlFlow().execute(async () => {
|
||||
await expect(dateRangeFilter.getFromDate()).toEqual(dateRangeFilter.getFromCalendarSelectedDate());
|
||||
});
|
||||
it('[C277104] Should be able to set dates using date pickers', async () => {
|
||||
await dateRangeFilter.checkFromDateToggleIsDisplayed();
|
||||
const fromDatePicker = await dateRangeFilter.openFromDatePicker();
|
||||
await fromDatePicker.selectTodayDate();
|
||||
await expect(await dateRangeFilter.getFromDate()).toEqual(await dateRangeFilter.getFromCalendarSelectedDate());
|
||||
});
|
||||
|
||||
it('[C277105] Should be able to type a date', () => {
|
||||
it('[C277105] Should be able to type a date', async () => {
|
||||
const date = '01-May-18';
|
||||
dateRangeFilter.putFromDate(date);
|
||||
browser.controlFlow().execute(async () => {
|
||||
await expect(dateRangeFilter.getFromCalendarSelectedDate()).toEqual(dateRangeFilter.getFromDate());
|
||||
});
|
||||
await dateRangeFilter.putFromDate(date);
|
||||
await expect(await dateRangeFilter.getFromCalendarSelectedDate()).toEqual(await dateRangeFilter.getFromDate());
|
||||
});
|
||||
|
||||
it('[C277119] FROM and TO dates should depend on each other', () => {
|
||||
dateRangeFilter.checkFromDateToggleIsDisplayed().openFromDatePicker()
|
||||
.checkDatesAfterDateAreDisabled(new Date())
|
||||
.closeDatePicker();
|
||||
it('[C277119] FROM and TO dates should depend on each other', async () => {
|
||||
await dateRangeFilter.checkFromDateToggleIsDisplayed();
|
||||
const fromDatePicker = await dateRangeFilter.openFromDatePicker();
|
||||
await fromDatePicker.checkDatesAfterDateAreDisabled(new Date());
|
||||
await fromDatePicker.closeDatePicker();
|
||||
|
||||
dateRangeFilter.checkToDateToggleIsDisplayed().openToDatePicker()
|
||||
.checkDatesAfterDateAreDisabled(new Date())
|
||||
.closeDatePicker();
|
||||
await dateRangeFilter.checkToDateToggleIsDisplayed();
|
||||
let datePickerTo = await dateRangeFilter.openToDatePicker();
|
||||
|
||||
dateRangeFilter.checkFromDateToggleIsDisplayed().openFromDatePicker()
|
||||
.selectTodayDate()
|
||||
.checkDatePickerIsNotDisplayed();
|
||||
await datePickerTo.checkDatesAfterDateAreDisabled(new Date());
|
||||
await datePickerTo.closeDatePicker();
|
||||
|
||||
dateRangeFilter.checkToDateToggleIsDisplayed().openToDatePicker()
|
||||
.checkDatesBeforeDateAreDisabled(new Date())
|
||||
.checkDatesAfterDateAreDisabled(new Date());
|
||||
await dateRangeFilter.checkFromDateToggleIsDisplayed();
|
||||
const datePickerFrom = await dateRangeFilter.openFromDatePicker();
|
||||
await datePickerFrom.selectTodayDate();
|
||||
await datePickerFrom.checkDatePickerIsNotDisplayed();
|
||||
|
||||
await dateRangeFilter.checkToDateToggleIsDisplayed();
|
||||
datePickerTo = await dateRangeFilter.openToDatePicker();
|
||||
await datePickerTo.checkDatesBeforeDateAreDisabled(new Date());
|
||||
await datePickerTo.checkDatesAfterDateAreDisabled(new Date());
|
||||
});
|
||||
|
||||
it('[C277107] Should be able to apply a date range', () => {
|
||||
let fromDate, toDate;
|
||||
dateRangeFilter.checkFromDateToggleIsDisplayed().openFromDatePicker()
|
||||
.selectTodayDate()
|
||||
.checkDatePickerIsNotDisplayed();
|
||||
dateRangeFilter.getFromDate().then((date) => {
|
||||
fromDate = DateUtil.formatDate('DD-MM-YY', DateUtil.parse(date, 'DD-MMM-YY'));
|
||||
});
|
||||
it('[C277107] Should be able to apply a date range', async () => {
|
||||
await dateRangeFilter.checkFromDateToggleIsDisplayed();
|
||||
const datePickerToday = await dateRangeFilter.openFromDatePicker();
|
||||
await datePickerToday.selectTodayDate();
|
||||
await datePickerToday.checkDatePickerIsNotDisplayed();
|
||||
let fromDate = await dateRangeFilter.getFromDate();
|
||||
fromDate = DateUtil.formatDate('DD-MM-YY', DateUtil.parse(fromDate, 'DD-MMM-YY'));
|
||||
|
||||
dateRangeFilter.checkApplyButtonIsDisabled();
|
||||
await dateRangeFilter.checkApplyButtonIsDisabled();
|
||||
|
||||
dateRangeFilter.checkToDateToggleIsDisplayed().openToDatePicker()
|
||||
.selectTodayDate()
|
||||
.checkDatePickerIsNotDisplayed();
|
||||
dateRangeFilter.getToDate().then((date) => {
|
||||
toDate = DateUtil.formatDate('DD-MM-YY', DateUtil.parse(date, 'DD-MMM-YY'), 1);
|
||||
});
|
||||
await dateRangeFilter.checkToDateToggleIsDisplayed();
|
||||
const toDatePicker = await dateRangeFilter.openToDatePicker();
|
||||
|
||||
dateRangeFilter.checkApplyButtonIsEnabled()
|
||||
.clickApplyButton();
|
||||
await toDatePicker.selectTodayDate();
|
||||
await toDatePicker.checkDatePickerIsNotDisplayed();
|
||||
let toDate = await dateRangeFilter.getToDate();
|
||||
toDate = DateUtil.formatDate('DD-MM-YY', DateUtil.parse(toDate, 'DD-MMM-YY'), 1);
|
||||
|
||||
searchResults.sortByCreated('ASC');
|
||||
await dateRangeFilter.checkApplyButtonIsEnabled();
|
||||
await dateRangeFilter.clickApplyButton();
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Created');
|
||||
for (const currentResult of results) {
|
||||
await searchResults.sortByCreated('ASC');
|
||||
|
||||
currentResult.getAttribute('title').then(async (currentDate) => {
|
||||
const currentDateFormatted = DateUtil.parse(currentDate, 'MMM DD, YYYY, h:mm:ss a');
|
||||
const results: any = dataTable.geCellElementDetail('Created');
|
||||
for (const currentResult of results) {
|
||||
|
||||
await expect(currentDateFormatted <= DateUtil.parse(toDate, 'DD-MM-YY')).toBe(true);
|
||||
await expect(currentDateFormatted >= DateUtil.parse(fromDate, 'DD-MM-YY')).toBe(true);
|
||||
});
|
||||
const currentDate = currentResult.getAttribute('title');
|
||||
const currentDateFormatted = DateUtil.parse(currentDate, 'MMM DD, YYYY, h:mm:ss a');
|
||||
|
||||
}
|
||||
});
|
||||
await expect(currentDateFormatted <= DateUtil.parse(toDate, 'DD-MM-YY')).toBe(true);
|
||||
await expect(currentDateFormatted >= DateUtil.parse(fromDate, 'DD-MM-YY')).toBe(true);
|
||||
}
|
||||
});
|
||||
|
||||
it('[C277108] Should display a warning message when user doesn\'t set the date range at all', () => {
|
||||
dateRangeFilter.checkFromFieldIsDisplayed()
|
||||
.clickFromField()
|
||||
.clickToField()
|
||||
.checkFromErrorMessageIsDisplayed('Required value')
|
||||
.clickFromField()
|
||||
.checkToErrorMessageIsDisplayed('Required value');
|
||||
it('[C277108] Should display a warning message when user doesn\'t set the date range at all', async () => {
|
||||
await dateRangeFilter.checkFromFieldIsDisplayed();
|
||||
await dateRangeFilter.clickFromField();
|
||||
await dateRangeFilter.clickToField();
|
||||
await dateRangeFilter.checkFromErrorMessageIsDisplayed('Required value');
|
||||
await dateRangeFilter.clickFromField();
|
||||
await dateRangeFilter.checkToErrorMessageIsDisplayed('Required value');
|
||||
});
|
||||
|
||||
it('[C277114] Should display warning message if user doesn\'t set the date range properly', () => {
|
||||
it('[C277114] Should display warning message if user doesn\'t set the date range properly', async () => {
|
||||
const toDate = '01-May-18';
|
||||
const fromDate = '16-May-18';
|
||||
|
||||
dateRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToDate(toDate)
|
||||
.checkFromFieldIsDisplayed()
|
||||
.putFromDate(fromDate)
|
||||
.clickFromField()
|
||||
.checkToErrorMessageIsDisplayed('No days selected.');
|
||||
await dateRangeFilter.checkToFieldIsDisplayed();
|
||||
await dateRangeFilter.putToDate(toDate);
|
||||
await dateRangeFilter.checkFromFieldIsDisplayed();
|
||||
await dateRangeFilter.putFromDate(fromDate);
|
||||
await dateRangeFilter.clickFromField();
|
||||
await dateRangeFilter.checkToErrorMessageIsDisplayed('No days selected.');
|
||||
});
|
||||
|
||||
it('[C277115] Should display warning message if user types a date later than today\'s date', () => {
|
||||
dateRangeFilter.checkFromFieldIsDisplayed()
|
||||
.putFromDate(DateUtil.formatDate('DD-MMM-YY', new Date(), 1))
|
||||
.checkFromErrorMessageIsDisplayed('The date is beyond the maximum date.');
|
||||
it('[C277115] Should display warning message if user types a date later than today\'s date', async () => {
|
||||
await dateRangeFilter.checkFromFieldIsDisplayed();
|
||||
await dateRangeFilter.putFromDate(DateUtil.formatDate('DD-MMM-YY', new Date(), 1));
|
||||
await dateRangeFilter.checkFromErrorMessageIsDisplayed('The date is beyond the maximum date.');
|
||||
});
|
||||
|
||||
it('[C277108] Should display a warning message when user doesn\'t set the date range at all', () => {
|
||||
dateRangeFilter.checkFromFieldIsDisplayed()
|
||||
.putFromDate('Wrong Format')
|
||||
.clickToField()
|
||||
.checkFromErrorMessageIsDisplayed('Invalid date. The date must be in the format \'DD-MMM-YY\'')
|
||||
.putFromDate('01-May-18')
|
||||
.checkFromErrorMessageIsNotDisplayed();
|
||||
it('[C277108] Should display a warning message when user doesn\'t set the date range at all', async () => {
|
||||
await dateRangeFilter.checkFromFieldIsDisplayed();
|
||||
await dateRangeFilter.putFromDate('Wrong Format');
|
||||
await dateRangeFilter.clickToField();
|
||||
await dateRangeFilter.checkFromErrorMessageIsDisplayed('Invalid date. The date must be in the format \'DD-MMM-YY\'');
|
||||
await dateRangeFilter.putFromDate('01-May-18');
|
||||
await dateRangeFilter.checkFromErrorMessageIsNotDisplayed();
|
||||
});
|
||||
|
||||
describe('configuration change', () => {
|
||||
|
||||
let jsonFile;
|
||||
|
||||
beforeAll(() => {
|
||||
beforeAll(async () => {
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
});
|
||||
|
||||
it('[C277117] Should be able to change date format', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBar.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[4].component.settings.dateFormat = 'MM-DD-YY';
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().enterTextAndPressEnter('*');
|
||||
searchFilters.checkCreatedRangeFilterIsDisplayed()
|
||||
.clickCreatedRangeFilterHeader()
|
||||
.checkCreatedRangeFilterIsExpanded();
|
||||
dateRangeFilter.checkFromFieldIsDisplayed()
|
||||
.openFromDatePicker();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
await searchFilters.checkCreatedRangeFilterIsDisplayed();
|
||||
await searchFilters.clickCreatedRangeFilterHeader();
|
||||
await searchFilters.checkCreatedRangeFilterIsExpanded();
|
||||
await dateRangeFilter.checkFromFieldIsDisplayed();
|
||||
await dateRangeFilter.openFromDatePicker();
|
||||
|
||||
const todayDate = DateUtil.formatDate('MM-DD-YY');
|
||||
datePicker.selectTodayDate();
|
||||
await datePicker.selectTodayDate();
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
await expect(dateRangeFilter.getFromDate()).toEqual(todayDate);
|
||||
});
|
||||
await expect(await dateRangeFilter.getFromDate()).toEqual(todayDate);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@@ -56,7 +56,7 @@ describe('Search Number Range Filter', () => {
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
@@ -66,322 +66,318 @@ describe('Search Number Range Filter', () => {
|
||||
|
||||
file2Bytes = await uploadActions.uploadFile(file2BytesModel.location, file2BytesModel.name, '-my-');
|
||||
file0Bytes = await uploadActions.uploadFile(file0BytesModel.location, file0BytesModel.name, '-my-');
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
loginPage.loginToContentServices(acsUser.id, acsUser.password);
|
||||
await loginPage.loginToContentServices(acsUser.id, acsUser.password);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await uploadActions.deleteFileOrFolder(file2Bytes.entry.id);
|
||||
await uploadActions.deleteFileOrFolder(file0Bytes.entry.id);
|
||||
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
searchFilters.checkSizeRangeFilterIsDisplayed()
|
||||
.clickSizeRangeFilterHeader()
|
||||
.checkSizeRangeFilterIsExpanded();
|
||||
beforeEach(async () => {
|
||||
await searchFilters.checkSizeRangeFilterIsDisplayed();
|
||||
await searchFilters.clickSizeRangeFilterHeader();
|
||||
await searchFilters.checkSizeRangeFilterIsExpanded();
|
||||
});
|
||||
|
||||
afterEach(async (done) => {
|
||||
afterEach(async () => {
|
||||
await browser.refresh();
|
||||
done();
|
||||
|
||||
});
|
||||
|
||||
it('[C276921] Should display default values for Number Range widget', () => {
|
||||
sizeRangeFilter.checkFromFieldIsDisplayed()
|
||||
.checkToFieldIsDisplayed()
|
||||
.checkApplyButtonIsDisplayed()
|
||||
.checkClearButtonIsDisplayed();
|
||||
it('[C276921] Should display default values for Number Range widget', async () => {
|
||||
await sizeRangeFilter.checkFromFieldIsDisplayed();
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.checkApplyButtonIsDisplayed();
|
||||
await sizeRangeFilter.checkClearButtonIsDisplayed();
|
||||
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
});
|
||||
|
||||
it('[C276922] Should be keep value when Number Range widget is collapsed', () => {
|
||||
it('[C276922] Should be keep value when Number Range widget is collapsed', async () => {
|
||||
const size = 5;
|
||||
sizeRangeFilter.putFromNumber(size);
|
||||
sizeRangeFilter.putToNumber(size);
|
||||
searchFilters.clickSizeRangeFilterHeader()
|
||||
.checkSizeRangeFilterIsCollapsed()
|
||||
.clickSizeRangeFilterHeader()
|
||||
.checkSizeRangeFilterIsExpanded();
|
||||
expect(sizeRangeFilter.getFromNumber()).toEqual(`${size}`);
|
||||
expect(sizeRangeFilter.getToNumber()).toEqual(`${size}`);
|
||||
await sizeRangeFilter.putFromNumber(size);
|
||||
await sizeRangeFilter.putToNumber(size);
|
||||
await searchFilters.clickSizeRangeFilterHeader();
|
||||
await searchFilters.checkSizeRangeFilterIsCollapsed();
|
||||
await searchFilters.clickSizeRangeFilterHeader();
|
||||
await searchFilters.checkSizeRangeFilterIsExpanded();
|
||||
await expect(await sizeRangeFilter.getFromNumber()).toEqual(`${size}`);
|
||||
await expect(await sizeRangeFilter.getToNumber()).toEqual(`${size}`);
|
||||
});
|
||||
|
||||
it('[C276924] Should display error message when input had an invalid format', () => {
|
||||
sizeRangeFilter.checkFromFieldIsDisplayed()
|
||||
.putFromNumber('a').putToNumber('A')
|
||||
.checkFromErrorInvalidIsDisplayed().checkToErrorInvalidIsDisplayed();
|
||||
it('[C276924] Should display error message when input had an invalid format', async () => {
|
||||
await sizeRangeFilter.checkFromFieldIsDisplayed();
|
||||
await sizeRangeFilter.putFromNumber('a');
|
||||
await sizeRangeFilter.putToNumber('A');
|
||||
await sizeRangeFilter.checkFromErrorInvalidIsDisplayed();
|
||||
await sizeRangeFilter.checkToErrorInvalidIsDisplayed();
|
||||
|
||||
expect(sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await expect(await sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
|
||||
sizeRangeFilter.putFromNumber('@').putToNumber('£')
|
||||
.checkFromErrorInvalidIsDisplayed().checkToErrorInvalidIsDisplayed();
|
||||
expect(sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await sizeRangeFilter.putFromNumber('@');
|
||||
await sizeRangeFilter.putToNumber('£');
|
||||
await sizeRangeFilter.checkFromErrorInvalidIsDisplayed();
|
||||
await sizeRangeFilter.checkToErrorInvalidIsDisplayed();
|
||||
await expect(await sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
|
||||
sizeRangeFilter.putFromNumber('4.5').putToNumber('4,5')
|
||||
.checkFromErrorInvalidIsDisplayed().checkToErrorInvalidIsDisplayed();
|
||||
expect(sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await sizeRangeFilter.putFromNumber('4.5');
|
||||
await sizeRangeFilter.putToNumber('4,5');
|
||||
await sizeRangeFilter.checkFromErrorInvalidIsDisplayed();
|
||||
await sizeRangeFilter.checkToErrorInvalidIsDisplayed();
|
||||
await expect(await sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
|
||||
sizeRangeFilter.putFromNumber('01').putToNumber('-1');
|
||||
expect(sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await sizeRangeFilter.putFromNumber('01');
|
||||
await sizeRangeFilter.putToNumber('-1');
|
||||
await expect(await sizeRangeFilter.getFromErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.getToErrorInvalid()).toEqual('Invalid Format');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
|
||||
sizeRangeFilter.clearFromField().clearToField()
|
||||
.checkFromErrorRequiredIsDisplayed().checkToErrorRequiredIsDisplayed();
|
||||
expect(sizeRangeFilter.getFromErrorRequired()).toEqual('Required value');
|
||||
expect(sizeRangeFilter.getToErrorRequired()).toEqual('Required value');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await sizeRangeFilter.clearFromField();
|
||||
await sizeRangeFilter.clearToField();
|
||||
await sizeRangeFilter.checkFromErrorRequiredIsDisplayed();
|
||||
await sizeRangeFilter.checkToErrorRequiredIsDisplayed();
|
||||
await expect(await sizeRangeFilter.getFromErrorRequired()).toEqual('Required value');
|
||||
await expect(await sizeRangeFilter.getToErrorRequired()).toEqual('Required value');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
});
|
||||
|
||||
it('[C276943] Should be able to put a big value in To field', () => {
|
||||
it('[C276943] Should be able to put a big value in To field', async () => {
|
||||
const toSize = 999999999;
|
||||
const fromSize = 0;
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(toSize)
|
||||
.putFromNumber(fromSize);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(toSize);
|
||||
await sizeRangeFilter.putFromNumber(fromSize);
|
||||
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.sortBySize('DESC');
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.sortBySize('DESC');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= toSize).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const results: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= toSize).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
it('[C276944] Should be able to filter by name when size range filter is applied', () => {
|
||||
const nameFilter = searchFilters.textFiltersPage();
|
||||
it('[C276944] Should be able to filter by name when size range filter is applied', async () => {
|
||||
const nameFilter = await searchFilters.textFiltersPage();
|
||||
const toSize = 40;
|
||||
const fromSize = 0;
|
||||
searchFilters.checkNameFilterIsDisplayed()
|
||||
.checkNameFilterIsExpanded();
|
||||
nameFilter.searchByName('*');
|
||||
await searchFilters.checkNameFilterIsDisplayed();
|
||||
await searchFilters.checkNameFilterIsExpanded();
|
||||
await nameFilter.searchByName('*');
|
||||
|
||||
sizeRangeFilter.checkFromFieldIsDisplayed()
|
||||
.putFromNumber(fromSize)
|
||||
.putToNumber(toSize);
|
||||
await sizeRangeFilter.checkFromFieldIsDisplayed();
|
||||
await sizeRangeFilter.putFromNumber(fromSize);
|
||||
await sizeRangeFilter.putToNumber(toSize);
|
||||
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
searchResults.sortBySize('DESC');
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
await searchResults.sortBySize('DESC');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= toSize).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const results: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= toSize).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
searchFilters.checkNameFilterIsDisplayed()
|
||||
.checkNameFilterIsExpanded();
|
||||
nameFilter.searchByName('z*');
|
||||
searchResults.sortBySize('DESC');
|
||||
await searchFilters.checkNameFilterIsDisplayed();
|
||||
await searchFilters.checkNameFilterIsExpanded();
|
||||
await nameFilter.searchByName('z*');
|
||||
await searchResults.sortBySize('DESC');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= toSize).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const resultsSize: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of resultsSize) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= toSize).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Display name');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const name = await currentResult.getAttribute('title');
|
||||
if (name && name.trim() !== '') {
|
||||
await expect(/z*/i.test(name)).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const resultsDisplay: any = dataTable.geCellElementDetail('Display name');
|
||||
for (const currentResult of resultsDisplay) {
|
||||
try {
|
||||
const name = await currentResult.getAttribute('title');
|
||||
if (name && name.trim() !== '') {
|
||||
await expect(/z*/i.test(name)).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
it('[C276951] Should not display folders when Size range is applied', () => {
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(99999999)
|
||||
.putFromNumber(0);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
it('[C276951] Should not display folders when Size range is applied', async () => {
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(99999999);
|
||||
await sizeRangeFilter.putFromNumber(0);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
searchResults.tableIsLoaded();
|
||||
searchFilters.checkCheckListFilterIsDisplayed();
|
||||
searchFilters.clickCheckListFilter();
|
||||
searchFilters.checkCheckListFilterIsExpanded();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchFilters.checkCheckListFilterIsDisplayed();
|
||||
await searchFilters.clickCheckListFilter();
|
||||
await searchFilters.checkCheckListFilterIsExpanded();
|
||||
|
||||
searchFilters.checkListFiltersPage()
|
||||
.clickCheckListOption('Folder');
|
||||
await searchFilters.checkListFiltersPage().clickCheckListOption('Folder');
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkNoResultMessageIsDisplayed();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkNoResultMessageIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C276952] Should only display empty files when size range is set from 0 to 1', () => {
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(1)
|
||||
.putFromNumber(0);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
it('[C276952] Should only display empty files when size range is set from 0 to 1', async () => {
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(1);
|
||||
await sizeRangeFilter.putFromNumber(0);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.sortBySize('DESC');
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.sortBySize('DESC');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(currentSize === '0').toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const results: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(currentSize === '0').toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
|
||||
it('[C277092] Should disable apply button when from field value equal/is bigger than to field value', () => {
|
||||
sizeRangeFilter.checkFromFieldIsDisplayed()
|
||||
.putFromNumber(10);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
it('[C277092] Should disable apply button when from field value equal/is bigger than to field value', async () => {
|
||||
await sizeRangeFilter.checkFromFieldIsDisplayed();
|
||||
await sizeRangeFilter.putFromNumber(10);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
|
||||
sizeRangeFilter.putToNumber('5');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await sizeRangeFilter.putToNumber('5');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
|
||||
sizeRangeFilter.putToNumber('10');
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
await sizeRangeFilter.putToNumber('10');
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(false);
|
||||
});
|
||||
|
||||
it('[C289930] Should be able to clear values in number range fields', () => {
|
||||
sizeRangeFilter.checkFromFieldIsDisplayed().checkClearButtonIsDisplayed().checkNoErrorMessageIsDisplayed()
|
||||
.clickClearButton().checkNoErrorMessageIsDisplayed()
|
||||
.putFromNumber(0).putToNumber(1).clickClearButton();
|
||||
it('[C289930] Should be able to clear values in number range fields', async () => {
|
||||
await sizeRangeFilter.checkFromFieldIsDisplayed();
|
||||
await sizeRangeFilter.checkClearButtonIsDisplayed();
|
||||
await sizeRangeFilter.checkNoErrorMessageIsDisplayed();
|
||||
await sizeRangeFilter.clickClearButton();
|
||||
await sizeRangeFilter.checkNoErrorMessageIsDisplayed();
|
||||
await sizeRangeFilter.putFromNumber(0);
|
||||
await sizeRangeFilter.putToNumber(1);
|
||||
await sizeRangeFilter.clickClearButton();
|
||||
|
||||
expect(sizeRangeFilter.getFromNumber()).toEqual('');
|
||||
expect(sizeRangeFilter.getToNumber()).toEqual('');
|
||||
await expect(await sizeRangeFilter.getFromNumber()).toEqual('');
|
||||
await expect(await sizeRangeFilter.getToNumber()).toEqual('');
|
||||
|
||||
sizeRangeFilter.putFromNumber(0).putToNumber(1).clickApplyButton();
|
||||
searchResults.sortBySize('DESC');
|
||||
await sizeRangeFilter.putFromNumber(0);
|
||||
await sizeRangeFilter.putToNumber(1);
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
await searchResults.sortBySize('DESC');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= 1000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const results: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= 1000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
sizeRangeFilter.clickClearButton();
|
||||
await sizeRangeFilter.clickClearButton();
|
||||
|
||||
expect(sizeRangeFilter.getFromNumber()).toEqual('');
|
||||
expect(sizeRangeFilter.getToNumber()).toEqual('');
|
||||
await expect(await sizeRangeFilter.getFromNumber()).toEqual('');
|
||||
await expect(await sizeRangeFilter.getToNumber()).toEqual('');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) >= 1000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const resultsSize: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of resultsSize) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) >= 1000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
it('[C277137] Number Range should be inclusive', () => {
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(2)
|
||||
.putFromNumber(1);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
it('[C277137] Number Range should be inclusive', async () => {
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(2);
|
||||
await sizeRangeFilter.putFromNumber(1);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(1)
|
||||
.putFromNumber(0);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(1);
|
||||
await sizeRangeFilter.putFromNumber(0);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(3)
|
||||
.putFromNumber(2);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(3);
|
||||
await sizeRangeFilter.putFromNumber(2);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(4)
|
||||
.putFromNumber(3);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(4);
|
||||
await sizeRangeFilter.putFromNumber(3);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
});
|
||||
|
||||
describe('Configuration change', () => {
|
||||
@@ -392,117 +388,113 @@ describe('Search Number Range Filter', () => {
|
||||
});
|
||||
|
||||
it('[C276928] Should be able to change the field property for number range', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[3].component.settings.field = 'cm:created';
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeRangeFilterIsDisplayed()
|
||||
.clickSizeRangeFilterHeader()
|
||||
.checkSizeRangeFilterIsExpanded();
|
||||
await searchFilters.checkSizeRangeFilterIsDisplayed();
|
||||
await searchFilters.clickSizeRangeFilterHeader();
|
||||
await searchFilters.checkSizeRangeFilterIsExpanded();
|
||||
|
||||
const fromYear = (new Date()).getFullYear();
|
||||
const toYear = fromYear + 1;
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(toYear)
|
||||
.putFromNumber(fromYear);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(toYear);
|
||||
await sizeRangeFilter.putFromNumber(fromYear);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.sortByCreated('DESC');
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.sortByCreated('DESC');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Created');
|
||||
for (const currentResult of results) {
|
||||
currentResult.getAttribute('title').then(async (currentDate) => {
|
||||
const currentDateFormatted = DateUtil.parse(currentDate, 'MMM DD, YYYY, h:mm:ss a');
|
||||
const results: any = dataTable.geCellElementDetail('Created');
|
||||
for (const currentResult of results) {
|
||||
const currentDate = await currentResult.getAttribute('title');
|
||||
const currentDateFormatted = DateUtil.parse(currentDate, 'MMM DD, YYYY, h:mm:ss a');
|
||||
|
||||
await expect(currentDateFormatted.getFullYear() <= toYear).toBe(true);
|
||||
await expect(currentDateFormatted.getFullYear() >= fromYear).toBe(true);
|
||||
});
|
||||
|
||||
}
|
||||
});
|
||||
await expect(currentDateFormatted.getFullYear() <= toYear).toBe(true);
|
||||
await expect(currentDateFormatted.getFullYear() >= fromYear).toBe(true);
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
it('[C277139] Should be able to set To field to be exclusive', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[3].component.settings.format = '[{FROM} TO {TO}>';
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeRangeFilterIsDisplayed()
|
||||
.clickSizeRangeFilterHeader()
|
||||
.checkSizeRangeFilterIsExpanded();
|
||||
await searchFilters.checkSizeRangeFilterIsDisplayed();
|
||||
await searchFilters.clickSizeRangeFilterHeader();
|
||||
await searchFilters.checkSizeRangeFilterIsExpanded();
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(2)
|
||||
.putFromNumber(1);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(2);
|
||||
await sizeRangeFilter.putFromNumber(1);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(3)
|
||||
.putFromNumber(1);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(3);
|
||||
await sizeRangeFilter.putFromNumber(1);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
});
|
||||
|
||||
it('[C277140] Should be able to set From field to be exclusive', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[3].component.settings.format = '<{FROM} TO {TO}]';
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeRangeFilterIsDisplayed()
|
||||
.clickSizeRangeFilterHeader()
|
||||
.checkSizeRangeFilterIsExpanded();
|
||||
await searchFilters.checkSizeRangeFilterIsDisplayed();
|
||||
await searchFilters.clickSizeRangeFilterHeader();
|
||||
await searchFilters.checkSizeRangeFilterIsExpanded();
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(3)
|
||||
.putFromNumber(1);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(3);
|
||||
await sizeRangeFilter.putFromNumber(1);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsDisplayed(file2BytesModel.name);
|
||||
|
||||
sizeRangeFilter.checkToFieldIsDisplayed()
|
||||
.putToNumber(3)
|
||||
.putFromNumber(2);
|
||||
expect(sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
await sizeRangeFilter.checkToFieldIsDisplayed();
|
||||
await sizeRangeFilter.putToNumber(3);
|
||||
await sizeRangeFilter.putFromNumber(2);
|
||||
await expect(await sizeRangeFilter.checkApplyButtonIsEnabled()).toBe(true);
|
||||
|
||||
sizeRangeFilter.clickApplyButton();
|
||||
await sizeRangeFilter.clickApplyButton();
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsNotDisplayed(file2BytesModel.name);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@@ -56,7 +56,7 @@ describe('Search Radio Component', () => {
|
||||
|
||||
let createdFile, createdFolder;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
@@ -71,16 +71,15 @@ describe('Search Radio Component', () => {
|
||||
nodeType: 'cm:content'
|
||||
});
|
||||
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=' + randomName);
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=' + randomName);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await uploadActions.deleteFileOrFolder(createdFile.entry.id);
|
||||
@@ -88,41 +87,40 @@ describe('Search Radio Component', () => {
|
||||
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C277039] Should be able to choose only one option at a time', () => {
|
||||
searchFiltersPage.checkTypeFilterIsDisplayed();
|
||||
searchFiltersPage.checkTypeFilterIsCollapsed();
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
it('[C277039] Should be able to choose only one option at a time', async () => {
|
||||
await searchFiltersPage.checkTypeFilterIsDisplayed();
|
||||
await searchFiltersPage.checkTypeFilterIsCollapsed();
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.none);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.all);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.folder);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.document);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.none);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.all);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.folder);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.document);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.none);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.none);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.folder);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.folder);
|
||||
await searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.folder);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.folder);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.document);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.document);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.document);
|
||||
await searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.document);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.document);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.all);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.all);
|
||||
await searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.all);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.all);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
});
|
||||
|
||||
describe('configuration change', () => {
|
||||
@@ -134,7 +132,7 @@ describe('Search Radio Component', () => {
|
||||
});
|
||||
|
||||
it('[C277147] Should be able to customise the pageSize value', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[5].component.settings.pageSize = 10;
|
||||
|
||||
@@ -147,40 +145,46 @@ describe('Search Radio Component', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[5].component.settings.pageSize = 11;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
jsonFile.categories[5].component.settings.pageSize = 9;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(9);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(9);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
browser.refresh();
|
||||
await browser.refresh();
|
||||
});
|
||||
|
||||
it('[C277148] Should be able to click show more/less button', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[5].component.settings.pageSize = 0;
|
||||
|
||||
@@ -193,54 +197,58 @@ describe('Search Radio Component', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickShowMoreButton();
|
||||
await searchFiltersPage.typeFiltersPage().clickShowMoreButton();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickShowLessButton();
|
||||
await searchFiltersPage.typeFiltersPage().clickShowLessButton();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
delete jsonFile.categories[5].component.settings.pageSize;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickShowMoreButton();
|
||||
await searchFiltersPage.typeFiltersPage().clickShowMoreButton();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(10);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsDisplayed();
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickShowLessButton();
|
||||
await searchFiltersPage.typeFiltersPage().clickShowLessButton();
|
||||
|
||||
expect(searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
await expect(await searchFiltersPage.typeFiltersPage().getRadioButtonsNumberOnPage()).toBe(5);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowMoreButtonIsDisplayed();
|
||||
await searchFiltersPage.typeFiltersPage().checkShowLessButtonIsNotDisplayed();
|
||||
});
|
||||
|
||||
});
|
||||
@@ -253,14 +261,13 @@ describe('Search Radio Component', () => {
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
});
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C277033] Should be able to add a new option', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[5].component.settings.options.push({
|
||||
'name': filterType.custom,
|
||||
@@ -269,20 +276,22 @@ describe('Search Radio Component', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().checkSearchBarIsVisible().enterTextAndPressEnter(randomName);
|
||||
searchFiltersPage.clickTypeFilterHeader();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(randomName);
|
||||
await searchFiltersPage.clickTypeFilterHeader();
|
||||
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.none);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.all);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.folder);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.document);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.custom);
|
||||
searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.none);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.none);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.all);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.folder);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.document);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsDisplayed(filterType.custom);
|
||||
await searchFiltersPage.typeFiltersPage().checkFilterRadioButtonIsChecked(filterType.none);
|
||||
|
||||
searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.custom);
|
||||
await searchFiltersPage.typeFiltersPage().clickFilterRadioButton(filterType.custom);
|
||||
|
||||
searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
await searchResults.checkContentIsDisplayed(nodeNames.document);
|
||||
await searchResults.checkContentIsNotDisplayed(nodeNames.folder);
|
||||
});
|
||||
|
||||
});
|
||||
|
@@ -27,7 +27,7 @@ import { browser } from 'protractor';
|
||||
import resources = require('../../util/resources');
|
||||
import { SearchConfiguration } from '../search.config';
|
||||
|
||||
describe('Search Number Range Filter', () => {
|
||||
describe('Search Slider Filter', () => {
|
||||
|
||||
const loginPage = new LoginPage();
|
||||
const searchDialog = new SearchDialog();
|
||||
@@ -51,7 +51,7 @@ describe('Search Number Range Filter', () => {
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
@@ -60,18 +60,17 @@ describe('Search Number Range Filter', () => {
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
|
||||
file2Bytes = await uploadActions.uploadFile(file2BytesModel.location, file2BytesModel.name, '-my-');
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
loginPage.loginToContentServices(acsUser.id, acsUser.password);
|
||||
await loginPage.loginToContentServices(acsUser.id, acsUser.password);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
afterAll(async () => {
|
||||
try {
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
await uploadActions.deleteFileOrFolder(file2Bytes.entry.id);
|
||||
@@ -80,169 +79,162 @@ describe('Search Number Range Filter', () => {
|
||||
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
beforeEach(() => {
|
||||
searchFilters.checkSizeSliderFilterIsDisplayed()
|
||||
.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsExpanded();
|
||||
});
|
||||
|
||||
afterEach(async (done) => {
|
||||
afterEach(async () => {
|
||||
await browser.refresh();
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C276970] Should be able to expand/collapse Search Size Slider', () => {
|
||||
searchFilters.checkSizeSliderFilterIsExpanded()
|
||||
.clickSizeSliderFilterHeader();
|
||||
sizeSliderFilter.checkSliderIsDisplayed()
|
||||
.checkClearButtonIsDisplayed()
|
||||
.checkClearButtonIsEnabled();
|
||||
searchFilters.checkSizeSliderFilterIsCollapsed();
|
||||
it('[C276970] Should be able to expand/collapse Search Size Slider', async () => {
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.checkClearButtonIsDisplayed();
|
||||
await sizeSliderFilter.checkClearButtonIsEnabled();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsCollapsed();
|
||||
await sizeSliderFilter.checkSliderIsNotDisplayed();
|
||||
await sizeSliderFilter.checkClearButtonIsNotDisplayed();
|
||||
});
|
||||
|
||||
it('[C276972] Should be keep value when Search Size Slider is collapsed', () => {
|
||||
it('[C276972] Should be keep value when Search Size Slider is collapsed', async () => {
|
||||
const size = 5;
|
||||
sizeSliderFilter.checkSliderIsDisplayed().setValue(size);
|
||||
searchFilters.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsCollapsed()
|
||||
.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsExpanded()
|
||||
.checkSizeSliderFilterIsDisplayed();
|
||||
expect(sizeSliderFilter.getValue()).toEqual(`${size}`);
|
||||
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.setValue(size);
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsCollapsed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsExpanded();
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
|
||||
await expect(await sizeSliderFilter.getValue()).toEqual(`${size}`);
|
||||
});
|
||||
|
||||
it('[C276981] Should be able to clear value in Search Size Slider', () => {
|
||||
it('[C276981] Should be able to clear value in Search Size Slider', async () => {
|
||||
const size = 5;
|
||||
sizeSliderFilter.checkSliderIsDisplayed().setValue(size);
|
||||
searchResults.sortBySize('DESC')
|
||||
.tableIsLoaded();
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= 5000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.setValue(size);
|
||||
await searchResults.sortBySize('DESC');
|
||||
await searchResults.tableIsLoaded();
|
||||
|
||||
const results: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) <= 5000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
sizeSliderFilter.checkSliderIsDisplayed()
|
||||
.clickClearButton();
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.clickClearButton();
|
||||
|
||||
searchResults.sortBySize('DESC')
|
||||
.tableIsLoaded();
|
||||
await searchResults.sortBySize('DESC');
|
||||
await searchResults.tableIsLoaded();
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of results) {
|
||||
try {
|
||||
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) >= 5000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
const resultsSize: any = dataTable.geCellElementDetail('Size');
|
||||
for (const currentResult of resultsSize) {
|
||||
try {
|
||||
const currentSize = await currentResult.getAttribute('title');
|
||||
if (currentSize && currentSize.trim() !== '') {
|
||||
await expect(parseInt(currentSize, 10) >= 5000).toBe(true);
|
||||
}
|
||||
} catch (e) {
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
describe('Configuration change', () => {
|
||||
let jsonFile;
|
||||
|
||||
beforeEach(() => {
|
||||
beforeEach(async () => {
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
});
|
||||
|
||||
it('[C276983] Should be able to disable thumb label in Search Size Slider', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.categories[2].component.settings.thumbLabel = false;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeSliderFilterIsDisplayed()
|
||||
.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsExpanded();
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsExpanded();
|
||||
|
||||
sizeSliderFilter.checkSliderWithThumbLabelIsNotDisplayed();
|
||||
await sizeSliderFilter.checkSliderWithThumbLabelIsNotDisplayed();
|
||||
});
|
||||
|
||||
it('[C276985] Should be able to set min value for Search Size Slider', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
|
||||
const minSize = 3;
|
||||
jsonFile.categories[2].component.settings.min = minSize;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeSliderFilterIsDisplayed()
|
||||
.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsExpanded();
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsExpanded();
|
||||
|
||||
sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
|
||||
expect(sizeSliderFilter.getMinValue()).toEqual(`${minSize}`);
|
||||
await expect(await sizeSliderFilter.getMinValue()).toEqual(`${minSize}`);
|
||||
});
|
||||
|
||||
it('[C276986] Should be able to set max value for Search Size Slider', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
|
||||
const maxSize = 50;
|
||||
jsonFile.categories[2].component.settings.max = maxSize;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeSliderFilterIsDisplayed()
|
||||
.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsExpanded();
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsExpanded();
|
||||
|
||||
sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
|
||||
expect(sizeSliderFilter.getMaxValue()).toEqual(`${maxSize}`);
|
||||
await expect(await sizeSliderFilter.getMaxValue()).toEqual(`${maxSize}`);
|
||||
});
|
||||
|
||||
it('[C276987] Should be able to set steps for Search Size Slider', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
|
||||
const step = 10;
|
||||
jsonFile.categories[2].component.settings.step = step;
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchFilters.checkSizeSliderFilterIsDisplayed()
|
||||
.clickSizeSliderFilterHeader()
|
||||
.checkSizeSliderFilterIsExpanded();
|
||||
await searchFilters.checkSizeSliderFilterIsDisplayed();
|
||||
await searchFilters.clickSizeSliderFilterHeader();
|
||||
await searchFilters.checkSizeSliderFilterIsExpanded();
|
||||
|
||||
const randomValue = 5;
|
||||
sizeSliderFilter.checkSliderIsDisplayed()
|
||||
.setValue(randomValue);
|
||||
expect(sizeSliderFilter.getValue()).toEqual(`0`);
|
||||
sizeSliderFilter.setValue(step);
|
||||
expect(sizeSliderFilter.getValue()).toEqual(`${step}`);
|
||||
await sizeSliderFilter.checkSliderIsDisplayed();
|
||||
await sizeSliderFilter.setValue(randomValue);
|
||||
|
||||
await expect(await sizeSliderFilter.getValue()).toEqual(`0`);
|
||||
await sizeSliderFilter.setValue(step);
|
||||
await expect(await sizeSliderFilter.getValue()).toEqual(`${step}`);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@@ -15,7 +15,12 @@
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
import { LoginPage, LocalStorageUtil, BrowserActions, SearchSortingPickerPage, UploadActions } from '@alfresco/adf-testing';
|
||||
import {
|
||||
LoginPage,
|
||||
LocalStorageUtil,
|
||||
SearchSortingPickerPage,
|
||||
UploadActions
|
||||
} from '@alfresco/adf-testing';
|
||||
import { SearchDialog } from '../../pages/adf/dialog/searchDialog';
|
||||
import { SearchResultsPage } from '../../pages/adf/searchResultsPage';
|
||||
import { NavigationBarPage } from '../../pages/adf/navigationBarPage';
|
||||
@@ -59,53 +64,47 @@ describe('Search Sorting Picker', () => {
|
||||
const search = '_png_file.png';
|
||||
let jsonFile;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
|
||||
pngA = await uploadActions.uploadFile(pngAModel.location, pngAModel.name, '-my-');
|
||||
await browser.driver.sleep(3000);
|
||||
pngD = await uploadActions.uploadFile(pngDModel.location, pngDModel.name, '-my-');
|
||||
await browser.driver.sleep(12000);
|
||||
await browser.sleep(12000);
|
||||
|
||||
loginPage.loginToContentServices(acsUser.id, acsUser.password);
|
||||
await loginPage.loginToContentServices(acsUser.id, acsUser.password);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
afterAll(async () => {
|
||||
await uploadActions.deleteFileOrFolder(pngA.entry.id);
|
||||
await uploadActions.deleteFileOrFolder(pngD.entry.id);
|
||||
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
beforeEach(async (done) => {
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search);
|
||||
done();
|
||||
beforeEach(async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search);
|
||||
});
|
||||
|
||||
afterEach(async (done) => {
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url);
|
||||
done();
|
||||
afterEach(async () => {
|
||||
await navigationBarPage.clickHomeButton();
|
||||
});
|
||||
|
||||
it(`[C277269] Should see the "sort by" option when search results are displayed in search results page`, () => {
|
||||
searchSortingPicker.checkSortingSelectorIsDisplayed();
|
||||
it(`[C277269] Should see the "sort by" option when search results are displayed in search results page`, async () => {
|
||||
await searchSortingPicker.checkSortingSelectorIsDisplayed();
|
||||
});
|
||||
|
||||
it(`[C277270] Should see the icon for ASC and DESC sort when search results are displayed in the search results page`, () => {
|
||||
searchSortingPicker.checkOrderArrowIsDisplayed();
|
||||
it(`[C277270] Should see the icon for ASC and DESC sort when search results are displayed in the search results page`, async () => {
|
||||
await searchSortingPicker.checkOrderArrowIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C277271] Should be able to add a custom search sorter in the "sort by" option', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
jsonFile.sorting.options.push({
|
||||
'key': 'Modifier',
|
||||
@@ -116,34 +115,34 @@ describe('Search Sorting Picker', () => {
|
||||
});
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search);
|
||||
|
||||
searchSortingPicker.checkSortingSelectorIsDisplayed()
|
||||
.clickSortingSelector()
|
||||
.checkOptionsDropdownIsDisplayed()
|
||||
.checkOptionIsDisplayed('Modifier');
|
||||
await searchSortingPicker.checkSortingSelectorIsDisplayed();
|
||||
await searchSortingPicker.clickSortingSelector();
|
||||
await searchSortingPicker.checkOptionsDropdownIsDisplayed();
|
||||
await searchSortingPicker.checkOptionIsDisplayed('Modifier');
|
||||
});
|
||||
|
||||
it('[C277272] Should be able to exclude a standard search sorter from the sorting option', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
const removedOption = jsonFile.sorting.options.splice(0, 1);
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search);
|
||||
|
||||
searchSortingPicker.checkSortingSelectorIsDisplayed()
|
||||
.clickSortingSelector()
|
||||
.checkOptionsDropdownIsDisplayed()
|
||||
.checkOptionIsNotDisplayed(removedOption[0].label);
|
||||
await searchSortingPicker.checkSortingSelectorIsDisplayed();
|
||||
await searchSortingPicker.clickSortingSelector();
|
||||
await searchSortingPicker.checkOptionsDropdownIsDisplayed();
|
||||
await searchSortingPicker.checkOptionIsNotDisplayed(removedOption[0].label);
|
||||
});
|
||||
|
||||
it('[C277273] Should be able to set a default order for a search sorting option', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
jsonFile.sorting.options[0].ascending = false;
|
||||
@@ -157,50 +156,46 @@ describe('Search Sorting Picker', () => {
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search);
|
||||
|
||||
searchSortingPicker.checkSortingSelectorIsDisplayed()
|
||||
.clickSortingSelector()
|
||||
.checkOptionIsDisplayed('Name')
|
||||
.clickSortingOption('Name');
|
||||
expect(searchSortingPicker.checkOrderArrowIsDownward()).toBe(true);
|
||||
await searchSortingPicker.checkSortingSelectorIsDisplayed();
|
||||
await searchSortingPicker.clickSortingSelector();
|
||||
await searchSortingPicker.checkOptionIsDisplayed('Name');
|
||||
await searchSortingPicker.clickSortingOption('Name');
|
||||
await expect(await searchSortingPicker.checkOrderArrowIsDownward()).toBe(true);
|
||||
});
|
||||
|
||||
it('[C277280] Should be able to sort the search results by "Name" ASC', () => {
|
||||
searchFilters.checkSearchFiltersIsDisplayed();
|
||||
searchFilters.creatorCheckListFiltersPage().filterBy(`${acsUser.firstName} ${acsUser.lastName}`);
|
||||
searchResults.sortByName('ASC');
|
||||
it('[C277280] Should be able to sort the search results by "Name" ASC', async () => {
|
||||
await searchFilters.checkSearchFiltersIsDisplayed();
|
||||
await searchFilters.creatorCheckListFiltersPage().filterBy(`${acsUser.firstName} ${acsUser.lastName}`);
|
||||
await searchResults.sortByName('ASC');
|
||||
|
||||
expect(searchResults.checkListIsOrderedByNameAsc()).toBe(true);
|
||||
await expect(await searchResults.checkListIsOrderedByNameAsc()).toBe(true);
|
||||
});
|
||||
|
||||
it('[C277281] Should be able to sort the search results by "Name" DESC', () => {
|
||||
searchFilters.checkSearchFiltersIsDisplayed();
|
||||
searchFilters.creatorCheckListFiltersPage().filterBy(`${acsUser.firstName} ${acsUser.lastName}`);
|
||||
searchResults.sortByName('DESC');
|
||||
expect(searchResults.checkListIsOrderedByNameDesc()).toBe(true);
|
||||
it('[C277281] Should be able to sort the search results by "Name" DESC', async () => {
|
||||
await searchFilters.checkSearchFiltersIsDisplayed();
|
||||
await searchFilters.creatorCheckListFiltersPage().filterBy(`${acsUser.firstName} ${acsUser.lastName}`);
|
||||
await searchResults.sortByName('DESC');
|
||||
await expect(await searchResults.checkListIsOrderedByNameDesc()).toBe(true);
|
||||
});
|
||||
|
||||
it('[C277286] Should be able to sort the search results by "Created Date" ASC', () => {
|
||||
searchResults.sortByCreated('ASC');
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await searchResults.dataTable.geCellElementDetail('Created');
|
||||
expect(contentServices.checkElementsDateSortedAsc(results)).toBe(true);
|
||||
});
|
||||
it('[C277286] Should be able to sort the search results by "Created Date" ASC', async () => {
|
||||
await searchResults.sortByCreated('ASC');
|
||||
const results: any = searchResults.dataTable.geCellElementDetail('Created');
|
||||
await expect(contentServices.checkElementsDateSortedAsc(results)).toBe(true);
|
||||
});
|
||||
|
||||
it('[C277287] Should be able to sort the search results by "Created Date" DESC', () => {
|
||||
searchResults.sortByCreated('DESC');
|
||||
browser.controlFlow().execute(async () => {
|
||||
const results = await searchResults.dataTable.geCellElementDetail('Created');
|
||||
expect(contentServices.checkElementsDateSortedDesc(results)).toBe(true);
|
||||
});
|
||||
it('[C277287] Should be able to sort the search results by "Created Date" DESC', async () => {
|
||||
await searchResults.sortByCreated('DESC');
|
||||
const results = searchResults.dataTable.geCellElementDetail('Created');
|
||||
await expect(contentServices.checkElementsDateSortedDesc(results)).toBe(true);
|
||||
});
|
||||
|
||||
it('[C277288] Should be able to sort the search results by "Modified Date" ASC', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
jsonFile.sorting.options.push({
|
||||
@@ -212,24 +207,22 @@ describe('Search Sorting Picker', () => {
|
||||
});
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search);
|
||||
|
||||
searchSortingPicker.checkSortingSelectorIsDisplayed()
|
||||
.sortBy('ASC', 'Modified Date');
|
||||
await searchSortingPicker.checkSortingSelectorIsDisplayed();
|
||||
await searchSortingPicker.sortBy('ASC', 'Modified Date');
|
||||
|
||||
browser.controlFlow().execute(async () => {
|
||||
const idList = await contentServices.getElementsDisplayedId();
|
||||
const numberOfElements = await contentServices.numberOfResultsDisplayed();
|
||||
const idList = await contentServices.getElementsDisplayedId();
|
||||
const numberOfElements = await contentServices.numberOfResultsDisplayed();
|
||||
|
||||
const nodeList = await nodeActions.getNodesDisplayed(this.alfrescoJsApi, idList, numberOfElements);
|
||||
const modifiedDateList = [];
|
||||
for (let i = 0; i < nodeList.length; i++) {
|
||||
modifiedDateList.push(new Date(nodeList[i].entry.modifiedAt));
|
||||
}
|
||||
expect(contentServices.checkElementsDateSortedAsc(modifiedDateList)).toBe(true);
|
||||
});
|
||||
const nodeList = await nodeActions.getNodesDisplayed(this.alfrescoJsApi, idList, numberOfElements);
|
||||
const modifiedDateList = [];
|
||||
for (let i = 0; i < nodeList.length; i++) {
|
||||
modifiedDateList.push(new Date(nodeList[i].entry.modifiedAt));
|
||||
}
|
||||
await expect(contentServices.checkElementsDateSortedAsc(modifiedDateList)).toBe(true);
|
||||
});
|
||||
|
||||
});
|
||||
|
@@ -42,7 +42,7 @@ describe('Search component - Text widget', () => {
|
||||
const acsUser = new AcsUserModel();
|
||||
const newFolderModel = new FolderModel({ 'name': 'newFolder', 'description': 'newDescription' });
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
|
||||
this.alfrescoJsApi = new AlfrescoApi({
|
||||
provider: 'ECM',
|
||||
@@ -64,66 +64,66 @@ describe('Search component - Text widget', () => {
|
||||
}
|
||||
}, {}, {});
|
||||
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
it('[C289329] Placeholder should be displayed in the widget when the input string is empty', () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
searchResultPage.tableIsLoaded();
|
||||
it('[C289329] Placeholder should be displayed in the widget when the input string is empty', async () => {
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
await searchResultPage.tableIsLoaded();
|
||||
|
||||
searchFiltersPage.checkNameFilterIsDisplayed();
|
||||
expect(searchFiltersPage.textFiltersPage().getNamePlaceholder()).toEqual('Enter the name');
|
||||
await searchFiltersPage.checkNameFilterIsDisplayed();
|
||||
await expect(await searchFiltersPage.textFiltersPage().getNamePlaceholder()).toEqual('Enter the name');
|
||||
});
|
||||
|
||||
describe('configuration change', () => {
|
||||
|
||||
let jsonFile;
|
||||
|
||||
beforeAll(() => {
|
||||
beforeAll(async () => {
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
});
|
||||
|
||||
it('[C289330] Should be able to change the Field setting', async () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
searchResultPage.tableIsLoaded();
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
await searchResultPage.tableIsLoaded();
|
||||
|
||||
searchFiltersPage.checkCheckListFilterIsDisplayed();
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption('Folder');
|
||||
await searchFiltersPage.checkCheckListFilterIsDisplayed();
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption('Folder');
|
||||
|
||||
searchFiltersPage.checkNameFilterIsDisplayed();
|
||||
searchFiltersPage.textFiltersPage().searchByName(newFolderModel.name);
|
||||
searchResultPage.checkContentIsDisplayed(newFolderModel.name);
|
||||
await searchFiltersPage.checkNameFilterIsDisplayed();
|
||||
await searchFiltersPage.textFiltersPage().searchByName(newFolderModel.name);
|
||||
await searchResultPage.checkContentIsDisplayed(newFolderModel.name);
|
||||
|
||||
searchFiltersPage.textFiltersPage().searchByName(newFolderModel.description);
|
||||
searchResultPage.checkContentIsNotDisplayed(newFolderModel.name);
|
||||
await searchFiltersPage.textFiltersPage().searchByName(newFolderModel.description);
|
||||
await searchResultPage.checkContentIsNotDisplayed(newFolderModel.name);
|
||||
|
||||
jsonFile.categories[0].component.settings.field = 'cm:description';
|
||||
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon().enterTextAndPressEnter('*');
|
||||
searchResultPage.tableIsLoaded();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
await searchResultPage.tableIsLoaded();
|
||||
|
||||
searchFiltersPage.checkCheckListFilterIsDisplayed();
|
||||
searchFiltersPage.clickCheckListFilter();
|
||||
searchFiltersPage.checkListFiltersPage().clickCheckListOption('Folder');
|
||||
await searchFiltersPage.checkCheckListFilterIsDisplayed();
|
||||
await searchFiltersPage.clickCheckListFilter();
|
||||
await searchFiltersPage.checkListFiltersPage().clickCheckListOption('Folder');
|
||||
|
||||
searchFiltersPage.checkNameFilterIsDisplayed();
|
||||
searchFiltersPage.textFiltersPage().searchByName(newFolderModel.name);
|
||||
searchResultPage.checkContentIsNotDisplayed(newFolderModel.name);
|
||||
await searchFiltersPage.checkNameFilterIsDisplayed();
|
||||
await searchFiltersPage.textFiltersPage().searchByName(newFolderModel.name);
|
||||
await searchResultPage.checkContentIsNotDisplayed(newFolderModel.name);
|
||||
|
||||
searchFiltersPage.textFiltersPage().searchByName(newFolderModel.description);
|
||||
searchResultPage.checkContentIsDisplayed(newFolderModel.name);
|
||||
await searchFiltersPage.textFiltersPage().searchByName(newFolderModel.description);
|
||||
await searchResultPage.checkContentIsDisplayed(newFolderModel.name);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@@ -79,7 +79,7 @@ describe('Search component - Search Bar', () => {
|
||||
|
||||
let fileHighlightUploaded;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
@@ -103,178 +103,161 @@ describe('Search component - Search Bar', () => {
|
||||
filesToDelete.push(await uploadActions.createFolder(secondFolder.name, '-my-'));
|
||||
filesToDelete.push(await uploadActions.createFolder(thirdFolder.name, '-my-'));
|
||||
|
||||
await browser.driver.sleep(15000); // wait search index previous file/folder uploaded
|
||||
await browser.sleep(15000); // wait search index previous file/folder uploaded
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
|
||||
filesToDelete.forEach(async (currentNode) => {
|
||||
afterAll(async () => {
|
||||
for (const currentNode of filesToDelete) {
|
||||
await uploadActions.deleteFileOrFolder(currentNode.entry.id);
|
||||
|
||||
});
|
||||
}
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterEach(async (done) => {
|
||||
afterEach(async () => {
|
||||
await BrowserActions.getUrl(browser.params.testConfig.adf.url);
|
||||
done();
|
||||
|
||||
});
|
||||
|
||||
it('[C272798] Search bar should be visible', () => {
|
||||
searchDialog
|
||||
.checkSearchBarIsNotVisible()
|
||||
.checkSearchIconIsVisible();
|
||||
it('[C272798] Search bar should be visible', async () => {
|
||||
await searchDialog.checkSearchBarIsNotVisible();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
|
||||
BrowserActions.closeMenuAndDialogs();
|
||||
await BrowserActions.closeMenuAndDialogs();
|
||||
|
||||
searchDialog
|
||||
.checkSearchBarIsNotVisible()
|
||||
.checkSearchIconIsVisible();
|
||||
await searchDialog.checkSearchBarIsNotVisible();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
});
|
||||
|
||||
it('[C272799] Should be possible to hide search bar after input', () => {
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.enterText(firstFolderModel.shortName);
|
||||
it('[C272799] Should be possible to hide search bar after input', async () => {
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterText(firstFolderModel.shortName);
|
||||
});
|
||||
|
||||
it('[C260255] Should display message when searching for an inexistent file', () => {
|
||||
searchDialog
|
||||
.checkSearchBarIsNotVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkNoResultMessageIsNotDisplayed()
|
||||
.enterText(search.inactive.name)
|
||||
.checkNoResultMessageIsDisplayed();
|
||||
it('[C260255] Should display message when searching for an inexistent file', async () => {
|
||||
await searchDialog.checkSearchBarIsNotVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkNoResultMessageIsNotDisplayed();
|
||||
await searchDialog.enterText(search.inactive.name);
|
||||
await searchDialog.checkNoResultMessageIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C260256] Should display file/folder in search suggestion when typing first characters', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterText(firstFolderModel.shortName);
|
||||
it('[C260256] Should display file/folder in search suggestion when typing first characters', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterText(firstFolderModel.shortName);
|
||||
|
||||
searchDialog.resultTableContainsRow(firstFolderModel.name);
|
||||
await searchDialog.resultTableContainsRow(firstFolderModel.name);
|
||||
|
||||
expect(searchDialog.getSpecificRowsHighlightName(firstFolderModel.name)).toEqual(firstFolderModel.shortName);
|
||||
expect(searchDialog.getSpecificRowsAuthor(firstFolderModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
expect(searchDialog.getSpecificRowsCompleteName(firstFolderModel.name)).toEqual(firstFolderModel.name);
|
||||
await expect(await searchDialog.getSpecificRowsHighlightName(firstFolderModel.name)).toEqual(firstFolderModel.shortName);
|
||||
await expect(await searchDialog.getSpecificRowsAuthor(firstFolderModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
await expect(await searchDialog.getSpecificRowsCompleteName(firstFolderModel.name)).toEqual(firstFolderModel.name);
|
||||
|
||||
searchDialog.clearText();
|
||||
await searchDialog.clearText();
|
||||
|
||||
searchDialog.clickOnSearchIcon().enterText(firstFileModel.shortName);
|
||||
searchDialog.resultTableContainsRow(firstFileModel.name);
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterText(firstFileModel.shortName);
|
||||
await searchDialog.resultTableContainsRow(firstFileModel.name);
|
||||
|
||||
expect(searchDialog.getSpecificRowsHighlightName(firstFileModel.name)).toEqual(firstFileModel.shortName);
|
||||
expect(searchDialog.getSpecificRowsAuthor(firstFileModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
await expect(await searchDialog.getSpecificRowsHighlightName(firstFileModel.name)).toEqual(firstFileModel.shortName);
|
||||
await expect(await searchDialog.getSpecificRowsAuthor(firstFileModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
|
||||
expect(searchDialog.getSpecificRowsCompleteName(firstFileModel.name)).toEqual(firstFileModel.name);
|
||||
await expect(await searchDialog.getSpecificRowsCompleteName(firstFileModel.name)).toEqual(firstFileModel.name);
|
||||
});
|
||||
|
||||
it('[C272800] Should display file/folder in search suggestion when typing name', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterText(firstFolderModel.name);
|
||||
it('[C272800] Should display file/folder in search suggestion when typing name', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterText(firstFolderModel.name);
|
||||
|
||||
searchDialog.resultTableContainsRow(firstFolderModel.name);
|
||||
await searchDialog.resultTableContainsRow(firstFolderModel.name);
|
||||
|
||||
expect(searchDialog.getSpecificRowsHighlightName(firstFolderModel.name)).toEqual(firstFolderModel.name);
|
||||
expect(searchDialog.getSpecificRowsAuthor(firstFolderModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
expect(searchDialog.getSpecificRowsCompleteName(firstFolderModel.name)).toEqual(firstFolderModel.name);
|
||||
await expect(await searchDialog.getSpecificRowsHighlightName(firstFolderModel.name)).toEqual(firstFolderModel.name);
|
||||
await expect(await searchDialog.getSpecificRowsAuthor(firstFolderModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
await expect(await searchDialog.getSpecificRowsCompleteName(firstFolderModel.name)).toEqual(firstFolderModel.name);
|
||||
|
||||
searchDialog.clearText();
|
||||
await searchDialog.clearText();
|
||||
|
||||
searchDialog.clickOnSearchIcon().enterText(firstFileModel.name);
|
||||
searchDialog.resultTableContainsRow(firstFileModel.name);
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterText(firstFileModel.name);
|
||||
await searchDialog.resultTableContainsRow(firstFileModel.name);
|
||||
|
||||
expect(searchDialog.getSpecificRowsHighlightName(firstFileModel.name)).toEqual(firstFileModel.name);
|
||||
expect(searchDialog.getSpecificRowsAuthor(firstFileModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
expect(searchDialog.getSpecificRowsCompleteName(firstFileModel.name)).toEqual(firstFileModel.name);
|
||||
await expect(await searchDialog.getSpecificRowsHighlightName(firstFileModel.name)).toEqual(firstFileModel.name);
|
||||
await expect(await searchDialog.getSpecificRowsAuthor(firstFileModel.name)).toEqual(acsUser.firstName + ' ' + acsUser.lastName);
|
||||
await expect(await searchDialog.getSpecificRowsCompleteName(firstFileModel.name)).toEqual(firstFileModel.name);
|
||||
});
|
||||
|
||||
it('[C260257] Should display content when clicking on folder from search suggestions', async () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterText(firstFolderModel.shortName);
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterText(firstFolderModel.shortName);
|
||||
|
||||
searchDialog.resultTableContainsRow(firstFolderModel.name);
|
||||
searchDialog.clickOnSpecificRow(firstFolderModel.name);
|
||||
await searchDialog.resultTableContainsRow(firstFolderModel.name);
|
||||
await searchDialog.clickOnSpecificRow(firstFolderModel.name);
|
||||
|
||||
expect(contentServicesPage.currentFolderName()).toEqual(firstFolderModel.name);
|
||||
await expect(await contentServicesPage.currentFolderName()).toEqual(firstFolderModel.name);
|
||||
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterText(firstFileModel.name)
|
||||
.resultTableContainsRow(firstFileModel.name);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterText(firstFileModel.name);
|
||||
await searchDialog.resultTableContainsRow(firstFileModel.name);
|
||||
|
||||
searchDialog.clickOnSpecificRow(firstFileModel.name);
|
||||
expect(await viewerPage.getDisplayedFileName()).toEqual(firstFileModel.name);
|
||||
await searchDialog.clickOnSpecificRow(firstFileModel.name);
|
||||
await expect(await viewerPage.getDisplayedFileName()).toEqual(firstFileModel.name);
|
||||
|
||||
viewerPage.clickCloseButton();
|
||||
await viewerPage.clickCloseButton();
|
||||
});
|
||||
|
||||
it('[C272801] Should display message when searching for non-existent folder', () => {
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterTextAndPressEnter(search.inactive.name);
|
||||
it('[C272801] Should display message when searching for non-existent folder', async () => {
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(search.inactive.name);
|
||||
|
||||
searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
await searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C272802] Should be able to find an existent folder in search results', () => {
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterTextAndPressEnter(firstFolderModel.name);
|
||||
it('[C272802] Should be able to find an existent folder in search results', async () => {
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(firstFolderModel.name);
|
||||
|
||||
searchResultPage.checkContentIsDisplayed(firstFolderModel.name);
|
||||
await searchResultPage.checkContentIsDisplayed(firstFolderModel.name);
|
||||
});
|
||||
|
||||
it('[C260258] Should be able to find an existent file in search results', () => {
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterTextAndPressEnter(firstFileModel.name);
|
||||
it('[C260258] Should be able to find an existent file in search results', async () => {
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(firstFileModel.name);
|
||||
|
||||
searchResultPage.checkContentIsDisplayed(firstFileModel.name);
|
||||
await searchResultPage.checkContentIsDisplayed(firstFileModel.name);
|
||||
});
|
||||
|
||||
it('[C91321] Should be able to use down arrow key when navigating throw suggestions', () => {
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterText(secondFolder.shortName)
|
||||
.pressDownArrowAndEnter();
|
||||
it('[C91321] Should be able to use down arrow key when navigating throw suggestions', async () => {
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterText(secondFolder.shortName);
|
||||
await searchDialog.pressDownArrowAndEnter();
|
||||
|
||||
searchResultPage.tableIsLoaded();
|
||||
expect(contentServicesPage.currentFolderName()).toEqual(secondFolder.name);
|
||||
await expect(await contentServicesPage.currentFolderName()).toEqual(secondFolder.name);
|
||||
});
|
||||
|
||||
it('[C290137] Should be able to search by \'%\'', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('%');
|
||||
searchResultPage.tableIsLoaded();
|
||||
it('[C290137] Should be able to search by \'%\'', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('%');
|
||||
await searchResultPage.tableIsLoaded();
|
||||
});
|
||||
|
||||
describe('Highlight', () => {
|
||||
@@ -282,22 +265,20 @@ describe('Search component - Search Bar', () => {
|
||||
const searchConfiguration = SearchConfiguration.getConfiguration();
|
||||
|
||||
beforeAll(async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(searchConfiguration));
|
||||
|
||||
searchDialog
|
||||
.checkSearchIconIsVisible()
|
||||
.clickOnSearchIcon()
|
||||
.checkSearchBarIsVisible()
|
||||
.enterTextAndPressEnter(term);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.checkSearchBarIsVisible();
|
||||
await searchDialog.enterTextAndPressEnter(term);
|
||||
});
|
||||
|
||||
it('[C299212] Should be able to configure the highlight option for search results', () => {
|
||||
searchResultPage.getNodeHighlight(fileHighlightUploaded.entry.name).getText().then((text) => {
|
||||
expect(text.includes(`¿${term}?`)).toBe(true);
|
||||
expect(text.includes(`(${term})`)).toBe(true);
|
||||
});
|
||||
it('[C299212] Should be able to configure the highlight option for search results', async () => {
|
||||
const text = await searchResultPage.getNodeHighlight(fileHighlightUploaded.entry.name).getText();
|
||||
await expect(text.includes(`¿${term}?`)).toBe(true);
|
||||
await expect(text.includes(`(${term})`)).toBe(true);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@@ -21,12 +21,19 @@ import { SearchResultsPage } from '../pages/adf/searchResultsPage';
|
||||
import { AcsUserModel } from '../models/ACS/acsUserModel';
|
||||
import { FileModel } from '../models/ACS/fileModel';
|
||||
import { NavigationBarPage } from '../pages/adf/navigationBarPage';
|
||||
import { StringUtil, DocumentListPage, PaginationPage, LoginPage, LocalStorageUtil, UploadActions } from '@alfresco/adf-testing';
|
||||
import {
|
||||
StringUtil,
|
||||
DocumentListPage,
|
||||
PaginationPage,
|
||||
LoginPage,
|
||||
LocalStorageUtil,
|
||||
UploadActions,
|
||||
BrowserActions
|
||||
} from '@alfresco/adf-testing';
|
||||
import resources = require('../util/resources');
|
||||
import { AlfrescoApiCompatibility as AlfrescoApi } from '@alfresco/js-api';
|
||||
import { browser } from 'protractor';
|
||||
import { SearchConfiguration } from './search.config';
|
||||
import { BrowserActions } from '../../lib/testing/src/lib/core/utils/browser-actions';
|
||||
|
||||
describe('Search Filters', () => {
|
||||
|
||||
@@ -81,7 +88,7 @@ describe('Search Filters', () => {
|
||||
|
||||
let jsonFile;
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
@@ -89,28 +96,19 @@ describe('Search Filters', () => {
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
|
||||
fileUploaded = await uploadActions.uploadFile(fileModel.location, fileModel.name, '-my-');
|
||||
|
||||
fileTypePng = await uploadActions.uploadFile(pngFileModel.location, pngFileModel.name, '-my-');
|
||||
|
||||
fileTypeTxt1 = await uploadActions.uploadFile(txtFileModel1.location, txtFileModel1.name, '-my-');
|
||||
|
||||
fileTypeJpg = await uploadActions.uploadFile(jpgFileModel.location, jpgFileModel.name, '-my-');
|
||||
|
||||
fileTypeTxt2 = await uploadActions.uploadFile(txtFileModel2.location, txtFileModel2.name, '-my-');
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
await browser.driver.sleep(15000); // wait search index previous file/folder uploaded
|
||||
|
||||
searchDialog.checkSearchIconIsVisible();
|
||||
searchDialog.clickOnSearchIcon();
|
||||
await browser.sleep(15000); // wait search index previous file/folder uploaded
|
||||
|
||||
jsonFile = SearchConfiguration.getConfiguration();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
afterAll(async () => {
|
||||
await this.alfrescoJsApi.login(acsUser.id, acsUser.password);
|
||||
|
||||
await uploadActions.deleteFileOrFolder(fileUploaded.entry.id);
|
||||
@@ -119,153 +117,158 @@ describe('Search Filters', () => {
|
||||
await uploadActions.deleteFileOrFolder(fileTypeTxt2.entry.id);
|
||||
await uploadActions.deleteFileOrFolder(fileTypeJpg.entry.id);
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C286298] Should be able to cancel a filter using "x" button from the toolbar', () => {
|
||||
searchDialog.enterTextAndPressEnter(fileUploaded.entry.name);
|
||||
it('[C286298] Should be able to cancel a filter using "x" button from the toolbar', async () => {
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(fileUploaded.entry.name);
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
|
||||
const userOption = `${acsUser.firstName} ${acsUser.lastName}`;
|
||||
searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption)
|
||||
.checkChipIsDisplayed(userOption)
|
||||
.removeFilterOption(userOption)
|
||||
.checkChipIsNotDisplayed(userOption);
|
||||
const searchCheckListPage = await searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption);
|
||||
await searchCheckListPage.checkChipIsDisplayed(userOption);
|
||||
await searchCheckListPage.removeFilterOption(userOption);
|
||||
await searchCheckListPage.checkChipIsNotDisplayed(userOption);
|
||||
});
|
||||
|
||||
it('[C277146] Should Show more/less buttons be hidden when inactive', () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
it('[C277146] Should Show more/less buttons be hidden when inactive', async () => {
|
||||
await BrowserActions.getUrl(`${browser.params.testConfig.adf.url}/search;q=*`);
|
||||
|
||||
searchFiltersPage.creatorCheckListFiltersPage().checkShowLessButtonIsNotDisplayed()
|
||||
.checkShowMoreButtonIsDisplayed()
|
||||
.clickShowMoreButtonUntilIsNotDisplayed()
|
||||
.checkShowLessButtonIsDisplayed()
|
||||
.clickShowLessButtonUntilIsNotDisplayed();
|
||||
const searchCheckListPage = searchFiltersPage.creatorCheckListFiltersPage();
|
||||
|
||||
await searchCheckListPage.checkShowLessButtonIsNotDisplayed();
|
||||
await searchCheckListPage.checkShowMoreButtonIsDisplayed();
|
||||
await searchCheckListPage.clickShowMoreButtonUntilIsNotDisplayed();
|
||||
await searchCheckListPage.checkShowLessButtonIsDisplayed();
|
||||
await searchCheckListPage.clickShowLessButtonUntilIsNotDisplayed();
|
||||
});
|
||||
|
||||
it('[C286556] Search categories should preserve their collapsed/expanded state after the search', () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
it('[C286556] Search categories should preserve their collapsed/expanded state after the search', async () => {
|
||||
await BrowserActions.getUrl(`${browser.params.testConfig.adf.url}/search;q=*`);
|
||||
|
||||
searchFiltersPage.clickFileTypeListFilter()
|
||||
.checkFileTypeFilterIsCollapsed()
|
||||
.clickFileSizeFilterHeader()
|
||||
.checkFileSizeFilterIsCollapsed();
|
||||
await searchFiltersPage.clickFileTypeListFilter();
|
||||
await searchFiltersPage.checkFileTypeFilterIsCollapsed();
|
||||
await searchFiltersPage.clickFileSizeFilterHeader();
|
||||
await searchFiltersPage.checkFileSizeFilterIsCollapsed();
|
||||
|
||||
searchFiltersPage.creatorCheckListFiltersPage().clickCheckListOption('Administrator');
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().clickCheckListOption('Administrator');
|
||||
|
||||
searchFiltersPage.checkFileTypeFilterIsCollapsed()
|
||||
.checkFileSizeFilterIsCollapsed();
|
||||
await searchFiltersPage.checkFileTypeFilterIsCollapsed();
|
||||
await searchFiltersPage.checkFileSizeFilterIsCollapsed();
|
||||
});
|
||||
|
||||
it('[C287796] Should be able to display the correct bucket number after selecting a filter', () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
it('[C287796] Should be able to display the correct bucket number after selecting a filter', async () => {
|
||||
await BrowserActions.getUrl(`${browser.params.testConfig.adf.url}/search;q=*`);
|
||||
|
||||
searchFiltersPage.fileTypeCheckListFiltersPage().clickCheckListOption('PNG Image');
|
||||
await searchFiltersPage.fileTypeCheckListFiltersPage().clickCheckListOption('PNG Image');
|
||||
|
||||
const bucketNumberForFilter = searchFiltersPage.fileTypeCheckListFiltersPage().getBucketNumberOfFilterType(filter.type);
|
||||
const resultFileNames = contentList.getAllRowsColumnValues('Display name');
|
||||
const bucketNumberForFilter = await searchFiltersPage.fileTypeCheckListFiltersPage().getBucketNumberOfFilterType(filter.type);
|
||||
const resultFileNames: any = await contentList.getAllRowsColumnValues('Display name');
|
||||
|
||||
expect(bucketNumberForFilter).not.toEqual('0');
|
||||
expect(paginationPage.getTotalNumberOfFiles()).toEqual(bucketNumberForFilter);
|
||||
await expect(bucketNumberForFilter).not.toEqual('0');
|
||||
await expect(await paginationPage.getTotalNumberOfFiles()).toEqual(bucketNumberForFilter);
|
||||
|
||||
resultFileNames.then((fileNames) => {
|
||||
fileNames.map((nameOfResultFiles) => {
|
||||
expect(nameOfResultFiles).toContain('.png');
|
||||
});
|
||||
resultFileNames.map(async (nameOfResultFiles) => {
|
||||
await expect(nameOfResultFiles).toContain('.png');
|
||||
});
|
||||
});
|
||||
|
||||
it('[C291802] Should be able to filter facet fields with "Contains"', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile['filterWithContains'] = true;
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
await searchResults.tableIsLoaded();
|
||||
|
||||
searchFiltersPage.creatorCheckListFiltersPage()
|
||||
.searchInFilter('dminis')
|
||||
.checkCheckListOptionIsDisplayed('Administrator');
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().searchInFilter('dminis');
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().checkCheckListOptionIsDisplayed('Administrator');
|
||||
});
|
||||
|
||||
it('[C291980] Should group search facets under specified labels', () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
it('[C291980] Should group search facets under specified labels', async () => {
|
||||
await BrowserActions.getUrl(`${browser.params.testConfig.adf.url}/search;q=*`);
|
||||
|
||||
searchFiltersPage.checkDefaultFacetQueryGroupIsDisplayed()
|
||||
.checkTypeFacetQueryGroupIsDisplayed()
|
||||
.checkSizeFacetQueryGroupIsDisplayed();
|
||||
await searchFiltersPage.checkDefaultFacetQueryGroupIsDisplayed();
|
||||
await searchFiltersPage.checkTypeFacetQueryGroupIsDisplayed();
|
||||
await searchFiltersPage.checkSizeFacetQueryGroupIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C291981] Should group search facets under the default label, by default', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
await searchResults.tableIsLoaded();
|
||||
|
||||
searchFiltersPage.checkDefaultFacetQueryGroupIsDisplayed();
|
||||
expect(searchFiltersPage.isTypeFacetQueryGroupPresent()).toBe(false);
|
||||
expect(searchFiltersPage.isSizeFacetQueryGroupPresent()).toBe(false);
|
||||
await searchFiltersPage.checkDefaultFacetQueryGroupIsDisplayed();
|
||||
await expect(await searchFiltersPage.isTypeFacetQueryGroupPresent()).toBe(false);
|
||||
await expect(await searchFiltersPage.isSizeFacetQueryGroupPresent()).toBe(false);
|
||||
});
|
||||
|
||||
it('[C297509] Should display search intervals under specified labels from config', () => {
|
||||
BrowserActions.getUrl(browser.params.testConfig.adf.url + '/search;q=*');
|
||||
it('[C297509] Should display search intervals under specified labels from config', async () => {
|
||||
await BrowserActions.getUrl(`${browser.params.testConfig.adf.url}/search;q=*`);
|
||||
|
||||
searchFiltersPage.checkFacetIntervalsByCreatedIsDisplayed()
|
||||
.checkFacetIntervalsByCreatedIsExpanded()
|
||||
.clickFacetIntervalsByCreatedFilterHeader()
|
||||
.checkFacetIntervalsByCreatedIsCollapsed()
|
||||
.clickFacetIntervalsByCreatedFilterHeader()
|
||||
.checkFacetIntervalsByCreatedIsExpanded()
|
||||
.checkFacetIntervalsByModifiedIsDisplayed()
|
||||
.checkFacetIntervalsByModifiedIsExpanded()
|
||||
.clickFacetIntervalsByModifiedFilterHeader()
|
||||
.checkFacetIntervalsByModifiedIsCollapsed()
|
||||
.clickFacetIntervalsByModifiedFilterHeader()
|
||||
.checkFacetIntervalsByModifiedIsExpanded();
|
||||
await searchFiltersPage.checkFacetIntervalsByCreatedIsDisplayed();
|
||||
await searchFiltersPage.checkFacetIntervalsByCreatedIsExpanded();
|
||||
await searchFiltersPage.clickFacetIntervalsByCreatedFilterHeader();
|
||||
await searchFiltersPage.checkFacetIntervalsByCreatedIsCollapsed();
|
||||
await searchFiltersPage.clickFacetIntervalsByCreatedFilterHeader();
|
||||
await searchFiltersPage.checkFacetIntervalsByCreatedIsExpanded();
|
||||
await searchFiltersPage.checkFacetIntervalsByModifiedIsDisplayed();
|
||||
await searchFiltersPage.checkFacetIntervalsByModifiedIsExpanded();
|
||||
await searchFiltersPage.clickFacetIntervalsByModifiedFilterHeader();
|
||||
await searchFiltersPage.checkFacetIntervalsByModifiedIsCollapsed();
|
||||
await searchFiltersPage.clickFacetIntervalsByModifiedFilterHeader();
|
||||
await searchFiltersPage.checkFacetIntervalsByModifiedIsExpanded();
|
||||
});
|
||||
|
||||
it('[C299200] Should reset the filters facet with search query', () => {
|
||||
searchDialog.enterTextAndPressEnter(fileTypeTxt1.entry.name);
|
||||
it('[C299200] Should reset the filters facet with search query', async () => {
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(fileTypeTxt1.entry.name);
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsDisplayed(fileTypeTxt1.entry.name);
|
||||
searchFiltersPage.checkFileTypeFacetLabelIsDisplayed('Plain Text (1)');
|
||||
searchFiltersPage.checkFileTypeFacetLabelIsNotDisplayed('JPEG Image');
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsDisplayed(fileTypeTxt1.entry.name);
|
||||
await searchFiltersPage.checkFileTypeFacetLabelIsDisplayed('Plain Text (1)');
|
||||
await searchFiltersPage.checkFileTypeFacetLabelIsNotDisplayed('JPEG Image');
|
||||
|
||||
searchDialog.enterTextAndPressEnter(fileNamePrefix);
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
searchResults.tableIsLoaded();
|
||||
searchResults.checkContentIsDisplayed(fileTypeTxt1.entry.name);
|
||||
searchResults.checkContentIsDisplayed(fileTypeTxt2.entry.name);
|
||||
searchResults.checkContentIsDisplayed(fileTypeJpg.entry.name);
|
||||
searchFiltersPage.checkFileTypeFacetLabelIsDisplayed('Plain Text (2)');
|
||||
searchFiltersPage.checkFileTypeFacetLabelIsDisplayed('JPEG Image (1)');
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
|
||||
await searchDialog.enterTextAndPressEnter(fileNamePrefix);
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchResults.checkContentIsDisplayed(fileTypeTxt1.entry.name);
|
||||
await searchResults.checkContentIsDisplayed(fileTypeTxt2.entry.name);
|
||||
await searchResults.checkContentIsDisplayed(fileTypeJpg.entry.name);
|
||||
await searchFiltersPage.checkFileTypeFacetLabelIsDisplayed('Plain Text (2)');
|
||||
await searchFiltersPage.checkFileTypeFacetLabelIsDisplayed('JPEG Image (1)');
|
||||
|
||||
});
|
||||
|
||||
it('[C299124] Should be able to parse escaped empty spaced labels inside facetFields', async () => {
|
||||
navigationBarPage.clickContentServicesButton();
|
||||
await navigationBarPage.clickContentServicesButton();
|
||||
|
||||
jsonFile.facetFields.fields[0].label = 'My File Types';
|
||||
jsonFile.facetFields.fields[1].label = 'My File Sizes';
|
||||
await LocalStorageUtil.setConfigField('search', JSON.stringify(jsonFile));
|
||||
|
||||
searchDialog.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchResults.tableIsLoaded();
|
||||
searchFiltersPage.checkCustomFacetFieldLabelIsDisplayed('My File Types');
|
||||
searchFiltersPage.checkCustomFacetFieldLabelIsDisplayed('My File Sizes');
|
||||
await searchResults.tableIsLoaded();
|
||||
await searchFiltersPage.checkCustomFacetFieldLabelIsDisplayed('My File Types');
|
||||
await searchFiltersPage.checkCustomFacetFieldLabelIsDisplayed('My File Sizes');
|
||||
});
|
||||
|
||||
});
|
||||
|
@@ -55,7 +55,7 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
'name': `${randomName}.txt`
|
||||
});
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
@@ -75,24 +75,23 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
|
||||
txtFileSite = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, site.entry.guid);
|
||||
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible();
|
||||
searchDialog.clickOnSearchIcon();
|
||||
searchDialog.enterTextAndPressEnter(`${randomName}`);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(`${randomName}`);
|
||||
|
||||
userOption = `${acsUser.firstName} ${acsUser.lastName}`;
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption);
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
Promise.all([
|
||||
afterAll(async () => {
|
||||
await Promise.all([
|
||||
uploadActions.deleteFileOrFolder(jpgFile.entry.id),
|
||||
uploadActions.deleteFileOrFolder(jpgFileSite.entry.id),
|
||||
uploadActions.deleteFileOrFolder(txtFile.entry.id),
|
||||
@@ -102,33 +101,32 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
await this.alfrescoJsApi.core.sitesApi.deleteSite(site.entry.id);
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
it('[C280054] Should be able to select multiple items from a search facet filter', () => {
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
it('[C280054] Should be able to select multiple items from a search facet filter', async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible();
|
||||
searchDialog.clickOnSearchIcon();
|
||||
searchDialog.enterTextAndPressEnter(`${randomName}`);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(`${randomName}`);
|
||||
|
||||
userOption = `${acsUser.firstName} ${acsUser.lastName}`;
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption);
|
||||
searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('Plain Text');
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().filterBy(userOption);
|
||||
await searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('Plain Text');
|
||||
|
||||
expect(searchResultsPage.numberOfResultsDisplayed()).toBe(2);
|
||||
searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
searchResultsPage.checkContentIsDisplayed(txtFileSite.entry.name);
|
||||
await expect(searchResultsPage.numberOfResultsDisplayed()).toBe(2);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFileSite.entry.name);
|
||||
|
||||
searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('JPEG Image');
|
||||
await searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('JPEG Image');
|
||||
|
||||
expect(searchResultsPage.numberOfResultsDisplayed()).toBe(4);
|
||||
searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
searchResultsPage.checkContentIsDisplayed(txtFileSite.entry.name);
|
||||
searchResultsPage.checkContentIsDisplayed(jpgFile.entry.name);
|
||||
searchResultsPage.checkContentIsDisplayed(jpgFileSite.entry.name);
|
||||
await expect(await searchResultsPage.numberOfResultsDisplayed()).toBe(4);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFileSite.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(jpgFile.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(jpgFileSite.entry.name);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -147,7 +145,7 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
'name': `${randomName}.txt`
|
||||
});
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(userUploadingTxt);
|
||||
@@ -171,27 +169,27 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
|
||||
jpgFile = await uploadActions.uploadFile(jpgFileInfo.location, jpgFileInfo.name, site.entry.guid);
|
||||
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
loginPage.loginToContentServicesUsingUserModel(userUploadingImg);
|
||||
await loginPage.loginToContentServicesUsingUserModel(userUploadingImg);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible();
|
||||
searchDialog.clickOnSearchIcon();
|
||||
searchDialog.enterTextAndPressEnter(`*${randomName}*`);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(`*${randomName}*`);
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
searchFiltersPage.creatorCheckListFiltersPage().filterBy(`${userUploadingTxt.firstName} ${userUploadingTxt.lastName}`);
|
||||
searchFiltersPage.creatorCheckListFiltersPage().filterBy(`${userUploadingImg.firstName} ${userUploadingImg.lastName}`);
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().filterBy(`${userUploadingTxt.firstName} ${userUploadingTxt.lastName}`);
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().filterBy(`${userUploadingImg.firstName} ${userUploadingImg.lastName}`);
|
||||
|
||||
searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
searchResultsPage.checkContentIsDisplayed(jpgFile.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(jpgFile.entry.name);
|
||||
|
||||
searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('Plain Text');
|
||||
searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('JPEG Image');
|
||||
await searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('Plain Text');
|
||||
await searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('JPEG Image');
|
||||
|
||||
expect(searchResultsPage.numberOfResultsDisplayed()).toBe(2);
|
||||
searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
searchResultsPage.checkContentIsDisplayed(jpgFile.entry.name);
|
||||
await expect(await searchResultsPage.numberOfResultsDisplayed()).toBe(2);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
await searchResultsPage.checkContentIsDisplayed(jpgFile.entry.name);
|
||||
});
|
||||
});
|
||||
|
||||
@@ -205,7 +203,7 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
'name': `${randomName}.txt`
|
||||
});
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
await this.alfrescoJsApi.login(browser.params.testConfig.adf.adminEmail, browser.params.testConfig.adf.adminPassword);
|
||||
|
||||
await this.alfrescoJsApi.core.peopleApi.addPerson(acsUser);
|
||||
@@ -218,38 +216,37 @@ describe('Search Component - Multi-Select Facet', () => {
|
||||
});
|
||||
|
||||
txtFile = await uploadActions.uploadFile(txtFileInfo.location, txtFileInfo.name, '-my-');
|
||||
await browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible();
|
||||
searchDialog.clickOnSearchIcon();
|
||||
searchDialog.enterTextAndPressEnter(`*${randomName}*`);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(`*${randomName}*`);
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async (done) => {
|
||||
afterAll(async () => {
|
||||
await uploadActions.deleteFileOrFolder(txtFile.entry.id);
|
||||
await this.alfrescoJsApi.core.sitesApi;
|
||||
done();
|
||||
|
||||
});
|
||||
|
||||
it('[C280058] Should update filter facets items number when another filter facet item is selected', () => {
|
||||
loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
it('[C280058] Should update filter facets items number when another filter facet item is selected', async () => {
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
searchDialog.checkSearchIconIsVisible();
|
||||
searchDialog.clickOnSearchIcon();
|
||||
searchDialog.enterTextAndPressEnter(`*${randomName}*`);
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(`*${randomName}*`);
|
||||
|
||||
searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('Plain Text');
|
||||
searchFiltersPage.creatorCheckListFiltersPage().filterBy(`${acsUser.firstName} ${acsUser.lastName}`);
|
||||
await searchFiltersPage.checkSearchFiltersIsDisplayed();
|
||||
await searchFiltersPage.fileTypeCheckListFiltersPage().filterBy('Plain Text');
|
||||
await searchFiltersPage.creatorCheckListFiltersPage().filterBy(`${acsUser.firstName} ${acsUser.lastName}`);
|
||||
|
||||
expect(searchResultsPage.numberOfResultsDisplayed()).toBe(1);
|
||||
searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
await expect(await searchResultsPage.numberOfResultsDisplayed()).toBe(1);
|
||||
await searchResultsPage.checkContentIsDisplayed(txtFile.entry.name);
|
||||
});
|
||||
});
|
||||
});
|
||||
|
@@ -63,7 +63,7 @@ describe('Search component - Search Page', () => {
|
||||
});
|
||||
const uploadActions = new UploadActions(this.alfrescoJsApi);
|
||||
|
||||
beforeAll(async (done) => {
|
||||
beforeAll(async () => {
|
||||
fileNames = Util.generateSequenceFiles(1, nrOfFiles, search.active.base, search.active.extension);
|
||||
const adminFileNames = Util.generateSequenceFiles(nrOfFiles + 1, nrOfFiles + adminNrOfFiles, search.active.base, search.active.extension);
|
||||
search.active.firstFile = fileNames[0];
|
||||
@@ -91,84 +91,83 @@ describe('Search component - Search Page', () => {
|
||||
|
||||
await uploadActions.createEmptyFiles(adminFileNames, newFolderModelUploaded.entry.id);
|
||||
|
||||
browser.driver.sleep(15000);
|
||||
await browser.sleep(15000);
|
||||
|
||||
await loginPage.loginToContentServicesUsingUserModel(acsUser);
|
||||
|
||||
done();
|
||||
});
|
||||
|
||||
afterAll(async () => {
|
||||
await navigationBarPage.clickLogoutButton();
|
||||
});
|
||||
|
||||
it('[C260264] Should display message when no results are found', () => {
|
||||
it('[C260264] Should display message when no results are found', async() => {
|
||||
const notExistentFileName = StringUtil.generateRandomString();
|
||||
searchDialog.checkSearchBarIsNotVisible().checkSearchIconIsVisible().clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(notExistentFileName);
|
||||
searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
await searchDialog.checkSearchBarIsNotVisible();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(notExistentFileName);
|
||||
await searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C272810] Should display only files corresponding to search', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search.active.firstFile);
|
||||
it('[C272810] Should display only files corresponding to search', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search.active.firstFile);
|
||||
|
||||
searchResultPage.checkContentIsDisplayed(search.active.firstFile);
|
||||
expect(searchResultPage.numberOfResultsDisplayed()).toBe(1);
|
||||
await searchResultPage.checkContentIsDisplayed(search.active.firstFile);
|
||||
await expect(await searchResultPage.numberOfResultsDisplayed()).toBe(1);
|
||||
});
|
||||
|
||||
it('[C260267] Should display content when opening a folder from search results', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(emptyFolderModel.name);
|
||||
it('[C260267] Should display content when opening a folder from search results', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(emptyFolderModel.name);
|
||||
|
||||
searchResultPage.checkNoResultMessageIsNotDisplayed();
|
||||
searchResultPage.checkContentIsDisplayed(emptyFolderModel.name);
|
||||
searchResultPage.navigateToFolder(emptyFolderModel.name);
|
||||
contentServicesPage.currentFolderName().then((result) => {
|
||||
expect(result).toEqual(emptyFolderModel.name);
|
||||
});
|
||||
await searchResultPage.checkNoResultMessageIsNotDisplayed();
|
||||
await searchResultPage.checkContentIsDisplayed(emptyFolderModel.name);
|
||||
await searchResultPage.navigateToFolder(emptyFolderModel.name);
|
||||
const result = await contentServicesPage.currentFolderName();
|
||||
await expect(result).toEqual(emptyFolderModel.name);
|
||||
});
|
||||
|
||||
it('[C260261] Should be able to delete a file from search results', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search.active.firstFile);
|
||||
it('[C260261] Should be able to delete a file from search results', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search.active.firstFile);
|
||||
|
||||
searchResultPage.checkContentIsDisplayed(search.active.firstFile);
|
||||
await searchResultPage.checkContentIsDisplayed(search.active.firstFile);
|
||||
|
||||
searchResultPage.deleteContent(search.active.firstFile);
|
||||
await searchResultPage.deleteContent(search.active.firstFile);
|
||||
|
||||
searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
searchResultPage.checkContentIsNotDisplayed(search.active.firstFile);
|
||||
await searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
await searchResultPage.checkContentIsNotDisplayed(search.active.firstFile);
|
||||
|
||||
searchDialog.checkSearchBarIsNotVisible().checkSearchIconIsVisible().clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(search.active.firstFile);
|
||||
searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
await searchDialog.checkSearchBarIsNotVisible();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(search.active.firstFile);
|
||||
await searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C272809] Should be able to delete a folder from search results', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(emptyFolderModel.name);
|
||||
it('[C272809] Should be able to delete a folder from search results', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(emptyFolderModel.name);
|
||||
|
||||
searchResultPage.checkContentIsDisplayed(emptyFolderModel.name);
|
||||
searchResultPage.checkNoResultMessageIsNotDisplayed();
|
||||
searchResultPage.checkContentIsDisplayed(emptyFolderModel.name);
|
||||
searchResultPage.deleteContent(emptyFolderModel.name);
|
||||
searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
await searchResultPage.checkContentIsDisplayed(emptyFolderModel.name);
|
||||
await searchResultPage.checkNoResultMessageIsNotDisplayed();
|
||||
await searchResultPage.checkContentIsDisplayed(emptyFolderModel.name);
|
||||
await searchResultPage.deleteContent(emptyFolderModel.name);
|
||||
await searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
|
||||
searchDialog.checkSearchBarIsNotVisible().checkSearchIconIsVisible().clickOnSearchIcon()
|
||||
.enterTextAndPressEnter(emptyFolderModel.name);
|
||||
searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
await searchDialog.checkSearchBarIsNotVisible();
|
||||
await searchDialog.checkSearchIconIsVisible();
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter(emptyFolderModel.name);
|
||||
await searchResultPage.checkNoResultMessageIsDisplayed();
|
||||
});
|
||||
|
||||
it('[C286675] Should display results when searching for all elements', () => {
|
||||
searchDialog
|
||||
.clickOnSearchIcon()
|
||||
.enterTextAndPressEnter('*');
|
||||
it('[C286675] Should display results when searching for all elements', async () => {
|
||||
await searchDialog.clickOnSearchIcon();
|
||||
await searchDialog.enterTextAndPressEnter('*');
|
||||
|
||||
searchResultPage.checkNoResultMessageIsNotDisplayed();
|
||||
await searchResultPage.checkNoResultMessageIsNotDisplayed();
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user