From 085a0ef1ce5f537abd84c1f43776fd4102176733 Mon Sep 17 00:00:00 2001 From: Jinghua Yao Date: Fri, 29 Oct 2021 00:05:40 -0700 Subject: [PATCH 1/4] add native filter part2 --- .../dashboard/nativeFilters.test.ts | 65 +++++++++++++++++++ .../cypress/support/directories.ts | 6 +- 2 files changed, 68 insertions(+), 3 deletions(-) diff --git a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts index 21d1be4c6eda9..9e737eaa74a98 100644 --- a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts +++ b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts @@ -132,6 +132,71 @@ describe('Nativefilters Sanity test', () => { .click(); cy.get(nativeFilters.modal.container).should('not.exist'); }); + it("User can delete a native filter", () => { + cy.get(nativeFilters.createFilterButton) + // .should("be.visible") + .click({force:true}); + cy.get(nativeFilters.modal.container).should("be.visible"); + + cy.get(nativeFilters.filtersList.removeIcon).first().click(); + cy.contains("Restore Filter").should("not.exist", { timeout: 10000 }); + + cy.get(nativeFilters.modal.footer) + .contains("Save") + .should("be.visible") + .click(); + }); + it("User can cancel changes in native filter", () => { + cy.get(nativeFilters.createFilterButton).click({force:true}); + cy.get(nativeFilters.modal.container) + .find(nativeFilters.filtersPanel.filterName) + .click() + .type("suffix"); + cy.get(nativeFilters.modal.container) + .find(nativeFilters.filtersPanel.datasetName).should('be.visible') + cy.get(nativeFilters.modal.footer) + .find(nativeFilters.modal.cancelButton) + .should("be.visible") + .click(); + cy.get(nativeFilters.modal.alertXUnsavedFilters).should("be.visible"); + // remove + cy.get(nativeFilters.modal.footer) + .find(nativeFilters.modal.yesCancelButton) + .contains('cancel') + .should("be.visible") + .click({ force: true }); + + cy.get(nativeFilters.createFilterButton) + .click({force:true}); + cy.get(nativeFilters.filtersList.removeIcon).first().click(); + cy.contains("You have removed this filter.").should("be.visible"); + cy.get(nativeFilters.modal.footer) + .find(nativeFilters.modal.saveButton) + .should("be.visible") + .click(); + cy.get(nativeFilters.filtersPanel.filterName).should("not.exist"); + }); + it("User can cancel creating a new filter", () => { + cy.get(nativeFilters.filterFromDashboardView.expand) + .should("be.visible") + .click(); + cy.get(nativeFilters.createFilterButton).should("be.visible").click(); + cy.get(nativeFilters.modal.container).should("be.visible"); + + cy.get(nativeFilters.modal.footer) + .find(nativeFilters.modal.cancelButton) + .should("be.visible") + .click(); + cy.get(nativeFilters.modal.alertXUnsavedFilters) + .should("have.text", "There are unsaved changes.") + .should("be.visible"); + cy.get(nativeFilters.modal.footer) + .find(nativeFilters.modal.yesCancelButton) + .contains('cancel') + .should("be.visible") + .click(); + cy.get(nativeFilters.modal.container).should("not.exist"); + }); }); xdescribe('Nativefilters', () => { diff --git a/superset-frontend/cypress-base/cypress/support/directories.ts b/superset-frontend/cypress-base/cypress/support/directories.ts index 2507b009d2609..62871d7f1d102 100644 --- a/superset-frontend/cypress-base/cypress/support/directories.ts +++ b/superset-frontend/cypress-base/cypress/support/directories.ts @@ -317,12 +317,12 @@ export const nativeFilters = { footer: '.ant-modal-footer', saveButton: dataTestLocator('native-filter-modal-save-button'), cancelButton: dataTestLocator('native-filter-modal-cancel-button'), - yesCancelButton: '.css-1mljg09', + yesCancelButton: '[type="button"]', alertXUnsavedFilters: '.ant-alert-message', tabsList: { tabsContainer: '[class="ant-tabs-nav-list"]', tab: '.ant-tabs-tab', - removeTab: '.ant-tabs-tab-remove', + removeTab: '[aria-label="trash"]', }, addFilter: dataTestLocator('add-filter-button'), }, @@ -353,7 +353,7 @@ export const nativeFilters = { listItemNotActive: '[class="ant-tabs-tab ant-tabs-tab-with-remove"]', listItemActive: '[class="ant-tabs-tab ant-tabs-tab-with-remove ant-tabs-tab-active"]', - removeIcon: '[aria-label="remove"]', + removeIcon: '[aria-label="trash"]', }, filterItem: dataTestLocator('form-item-value'), filterItemDropdown: '.ant-select-selection-search', From 3c56e94745b0ea122d300e370f74c6a24b88de25 Mon Sep 17 00:00:00 2001 From: Jinghua Yao Date: Fri, 29 Oct 2021 00:25:01 -0700 Subject: [PATCH 2/4] fix lint --- .../dashboard/nativeFilters.test.ts | 58 +++++++++---------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts index 9e737eaa74a98..74103ebe9420b 100644 --- a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts +++ b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts @@ -132,70 +132,70 @@ describe('Nativefilters Sanity test', () => { .click(); cy.get(nativeFilters.modal.container).should('not.exist'); }); - it("User can delete a native filter", () => { + it('User can delete a native filter', () => { cy.get(nativeFilters.createFilterButton) // .should("be.visible") - .click({force:true}); - cy.get(nativeFilters.modal.container).should("be.visible"); + .click({ force: true }); + cy.get(nativeFilters.modal.container).should('be.visible'); cy.get(nativeFilters.filtersList.removeIcon).first().click(); - cy.contains("Restore Filter").should("not.exist", { timeout: 10000 }); + cy.contains('Restore Filter').should('not.exist', { timeout: 10000 }); cy.get(nativeFilters.modal.footer) - .contains("Save") - .should("be.visible") + .contains('Save') + .should('be.visible') .click(); }); - it("User can cancel changes in native filter", () => { - cy.get(nativeFilters.createFilterButton).click({force:true}); + it('User can cancel changes in native filter', () => { + cy.get(nativeFilters.createFilterButton).click({ force: true }); cy.get(nativeFilters.modal.container) .find(nativeFilters.filtersPanel.filterName) .click() - .type("suffix"); - cy.get(nativeFilters.modal.container) - .find(nativeFilters.filtersPanel.datasetName).should('be.visible') + .type('suffix'); + cy.get(nativeFilters.modal.container) + .find(nativeFilters.filtersPanel.datasetName) + .should('be.visible'); cy.get(nativeFilters.modal.footer) .find(nativeFilters.modal.cancelButton) - .should("be.visible") + .should('be.visible') .click(); - cy.get(nativeFilters.modal.alertXUnsavedFilters).should("be.visible"); + cy.get(nativeFilters.modal.alertXUnsavedFilters).should('be.visible'); // remove cy.get(nativeFilters.modal.footer) .find(nativeFilters.modal.yesCancelButton) .contains('cancel') - .should("be.visible") + .should('be.visible') .click({ force: true }); - cy.get(nativeFilters.createFilterButton) - .click({force:true}); - cy.get(nativeFilters.filtersList.removeIcon).first().click(); - cy.contains("You have removed this filter.").should("be.visible"); + cy.get(nativeFilters.createFilterButton).click({ force: true }); + cy.get(nativeFilters.filtersList.removeIcon).first().click(); + cy.contains('You have removed this filter.').should('be.visible'); cy.get(nativeFilters.modal.footer) .find(nativeFilters.modal.saveButton) - .should("be.visible") + .should('be.visible') .click(); - cy.get(nativeFilters.filtersPanel.filterName).should("not.exist"); + cy.get(nativeFilters.filtersPanel.filterName).should('not.exist'); }); - it("User can cancel creating a new filter", () => { + it('User can cancel creating a new filter', () => { cy.get(nativeFilters.filterFromDashboardView.expand) - .should("be.visible") + .should('be.visible') .click(); - cy.get(nativeFilters.createFilterButton).should("be.visible").click(); - cy.get(nativeFilters.modal.container).should("be.visible"); + cy.get(nativeFilters.createFilterButton).should('be.visible').click(); + cy.get(nativeFilters.modal.container).should('be.visible'); cy.get(nativeFilters.modal.footer) .find(nativeFilters.modal.cancelButton) - .should("be.visible") + .should('be.visible') .click(); cy.get(nativeFilters.modal.alertXUnsavedFilters) - .should("have.text", "There are unsaved changes.") - .should("be.visible"); + .should('have.text', 'There are unsaved changes.') + .should('be.visible'); cy.get(nativeFilters.modal.footer) .find(nativeFilters.modal.yesCancelButton) .contains('cancel') - .should("be.visible") + .should('be.visible') .click(); - cy.get(nativeFilters.modal.container).should("not.exist"); + cy.get(nativeFilters.modal.container).should('not.exist'); }); }); From fe6764dd689ed76acecd8278a5cf81f66bf43f6f Mon Sep 17 00:00:00 2001 From: Jinghua Yao Date: Fri, 29 Oct 2021 08:58:11 -0700 Subject: [PATCH 3/4] remove unused code --- .../cypress/integration/dashboard/nativeFilters.test.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts index 74103ebe9420b..1782ef7c3d377 100644 --- a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts +++ b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts @@ -134,7 +134,6 @@ describe('Nativefilters Sanity test', () => { }); it('User can delete a native filter', () => { cy.get(nativeFilters.createFilterButton) - // .should("be.visible") .click({ force: true }); cy.get(nativeFilters.modal.container).should('be.visible'); @@ -160,7 +159,7 @@ describe('Nativefilters Sanity test', () => { .should('be.visible') .click(); cy.get(nativeFilters.modal.alertXUnsavedFilters).should('be.visible'); - // remove + // remove native filter cy.get(nativeFilters.modal.footer) .find(nativeFilters.modal.yesCancelButton) .contains('cancel') From e9d0707425048c9091dc6a9e26415ab796e2d6f8 Mon Sep 17 00:00:00 2001 From: Jinghua Yao Date: Fri, 29 Oct 2021 09:17:10 -0700 Subject: [PATCH 4/4] fix lint after modified --- .../cypress/integration/dashboard/nativeFilters.test.ts | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts index 1782ef7c3d377..35e3f013c9f58 100644 --- a/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts +++ b/superset-frontend/cypress-base/cypress/integration/dashboard/nativeFilters.test.ts @@ -133,8 +133,7 @@ describe('Nativefilters Sanity test', () => { cy.get(nativeFilters.modal.container).should('not.exist'); }); it('User can delete a native filter', () => { - cy.get(nativeFilters.createFilterButton) - .click({ force: true }); + cy.get(nativeFilters.createFilterButton).click({ force: true }); cy.get(nativeFilters.modal.container).should('be.visible'); cy.get(nativeFilters.filtersList.removeIcon).first().click();