From d98fc2a0202ffee5924377fc02542dbf64988eef Mon Sep 17 00:00:00 2001 From: Raju Udava <86527202+dstala@users.noreply.github.com> Date: Wed, 8 Feb 2023 15:29:47 +0530 Subject: [PATCH] test: filter update corrections Signed-off-by: Raju Udava <86527202+dstala@users.noreply.github.com> --- .../pages/Dashboard/common/Toolbar/Filter.ts | 16 ++++++++---- .../pages/Dashboard/common/Toolbar/Sort.ts | 25 +++++++++++-------- tests/playwright/tests/viewGridShare.spec.ts | 19 +++++++------- 3 files changed, 35 insertions(+), 25 deletions(-) diff --git a/tests/playwright/pages/Dashboard/common/Toolbar/Filter.ts b/tests/playwright/pages/Dashboard/common/Toolbar/Filter.ts index 6ba464951d..677f411a94 100644 --- a/tests/playwright/pages/Dashboard/common/Toolbar/Filter.ts +++ b/tests/playwright/pages/Dashboard/common/Toolbar/Filter.ts @@ -44,11 +44,17 @@ export class ToolbarFilterPage extends BasePage { }) { await this.get().locator(`button:has-text("Add Filter")`).first().click(); - await this.rootPage.locator('.nc-filter-field-select').last().click(); - await this.rootPage - .locator('div.ant-select-dropdown.nc-dropdown-toolbar-field-list') - .locator(`div[label="${columnTitle}"]`) - .click(); + const selectedField = await this.rootPage.locator('.nc-filter-field-select').textContent(); + if (selectedField !== columnTitle) { + await this.rootPage.locator('.nc-filter-field-select').last().click(); + await this.rootPage + .locator('div.ant-select-dropdown.nc-dropdown-toolbar-field-list') + .locator(`div[label="${columnTitle}"]`) + .click(); + } + + // network request will be triggered only after filter value is configured + // // const selectColumn = this.rootPage // .locator('div.ant-select-dropdown.nc-dropdown-toolbar-field-list') // .locator(`div[label="${columnTitle}"]`) diff --git a/tests/playwright/pages/Dashboard/common/Toolbar/Sort.ts b/tests/playwright/pages/Dashboard/common/Toolbar/Sort.ts index 17281cd4d2..0ae5a0d281 100644 --- a/tests/playwright/pages/Dashboard/common/Toolbar/Sort.ts +++ b/tests/playwright/pages/Dashboard/common/Toolbar/Sort.ts @@ -36,17 +36,20 @@ export class ToolbarSortPage extends BasePage { await this.get().locator(`button:has-text("Add Sort Option")`).click(); await this.rootPage.locator('.nc-sort-field-select').last().click(); - const selectColumn = this.rootPage - .locator('div.ant-select-dropdown.nc-dropdown-toolbar-field-list') - .locator(`div[label="${columnTitle}"]`) - .last() - .click(); - await this.waitForResponse({ - uiAction: selectColumn, - httpMethodsToMatch: isLocallySaved ? ['GET'] : ['POST', 'PATCH'], - requestUrlPathToMatch: isLocallySaved ? `/api/v1/db/public/` : `/sorts`, - }); - await this.toolbar.parent.dashboard.waitForLoaderToDisappear(); + + // network request will be triggered only after dir-select is clicked + // + // const selectColumn = this.rootPage + // .locator('div.ant-select-dropdown.nc-dropdown-toolbar-field-list') + // .locator(`div[label="${columnTitle}"]`) + // .last() + // .click(); + // await this.waitForResponse({ + // uiAction: selectColumn, + // httpMethodsToMatch: isLocallySaved ? ['GET'] : ['POST', 'PATCH'], + // requestUrlPathToMatch: isLocallySaved ? `/api/v1/db/public/` : `/sorts`, + // }); + // await this.toolbar.parent.dashboard.waitForLoaderToDisappear(); await this.rootPage.locator('.nc-sort-dir-select').last().click(); const selectSortDirection = this.rootPage diff --git a/tests/playwright/tests/viewGridShare.spec.ts b/tests/playwright/tests/viewGridShare.spec.ts index 76e862b93d..87172edd54 100644 --- a/tests/playwright/tests/viewGridShare.spec.ts +++ b/tests/playwright/tests/viewGridShare.spec.ts @@ -101,6 +101,7 @@ test.describe('Shared view', () => { **/ // create new sort & filter criteria in shared view + await sharedPage.grid.toolbar.sort.reset(); await sharedPage.grid.toolbar.sort.add({ columnTitle: 'Address', isAscending: true, @@ -232,12 +233,12 @@ const expectedRecords = [ ]; const sqliteExpectedRecords = [ - { index: 0, columnHeader: 'Address', value: '217 Botshabelo Place' }, - { index: 1, columnHeader: 'Address', value: '17 Kabul Boulevard' }, - { index: 2, columnHeader: 'Address', value: '1888 Kabul Drive' }, - { index: 0, columnHeader: 'PostalCode', value: '49521' }, - { index: 1, columnHeader: 'PostalCode', value: '38594' }, - { index: 2, columnHeader: 'PostalCode', value: '20936' }, + { index: 0, columnHeader: 'Address', value: '669 Firozabad Loop' }, + { index: 1, columnHeader: 'Address', value: '48 Maracabo Place' }, + { index: 2, columnHeader: 'Address', value: '44 Najafabad Way' }, + { index: 0, columnHeader: 'PostalCode', value: '92265' }, + { index: 1, columnHeader: 'PostalCode', value: '1570' }, + { index: 2, columnHeader: 'PostalCode', value: '61391' }, ]; const expectedRecords2 = [ @@ -272,8 +273,8 @@ const expectedVirtualRecords = [ ]; const sqliteExpectedVirtualRecords = [ - { index: 0, columnHeader: 'Customer List', count: 1, value: ['2'] }, + { index: 0, columnHeader: 'Customer List', count: 1, value: ['1'] }, { index: 1, columnHeader: 'Customer List', count: 1, value: ['1'] }, - { index: 0, columnHeader: 'City', count: 1, value: ['Davao'] }, - { index: 1, columnHeader: 'City', count: 1, value: ['Nagareyama'] }, + { index: 0, columnHeader: 'City', count: 1, value: ['al-Ayn'] }, + { index: 1, columnHeader: 'City', count: 1, value: ['Talavera'] }, ];