From fa07be72a7c4ae11c13509c667ff8488f69b0fac Mon Sep 17 00:00:00 2001 From: Nizamudeen A Date: Wed, 16 Aug 2023 14:46:42 +0530 Subject: [PATCH] mgr/dashboard: fix rgw buckets e2e Fixes: https://tracker.ceph.com/issues/62458 Signed-off-by: Nizamudeen A --- .../frontend/cypress/e2e/rgw/buckets.po.ts | 41 ++++++++++++------- 1 file changed, 26 insertions(+), 15 deletions(-) diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.po.ts b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.po.ts index a27be3c6ba4..47b0639bc91 100644 --- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.po.ts +++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.po.ts @@ -10,6 +10,11 @@ export class BucketsPageHelper extends PageHelper { pages = pages; + columnIndex = { + name: 3, + owner: 4 + }; + versioningStateEnabled = 'Enabled'; versioningStateSuspended = 'Suspended'; @@ -73,18 +78,22 @@ export class BucketsPageHelper extends PageHelper { cy.get('input[id=versioning]').should('be.disabled'); cy.contains('button', 'Edit Bucket').click(); + this.getTableCell(this.columnIndex.name, name) + .parent() + .find(`datatable-body-cell:nth-child(${this.columnIndex.owner})`) + .should(($elements) => { + const bucketName = $elements.text(); + expect(bucketName).to.eq(new_owner); + }); + // wait to be back on buckets page with table visible and click this.getExpandCollapseElement(name).click(); // check its details table for edited owner field - cy.get('.table.table-striped.table-bordered') - .first() - .should('contains.text', new_owner) - .as('bucketDataTable'); + cy.get('.table.table-striped.table-bordered').first().as('bucketDataTable'); // Check versioning enabled: - cy.get('@bucketDataTable').find('tr').its(2).find('td').last().should('have.text', new_owner); - cy.get('@bucketDataTable').find('tr').its(11).find('td').last().as('versioningValueCell'); + cy.get('@bucketDataTable').find('tr').its(0).find('td').last().as('versioningValueCell'); return cy.get('@versioningValueCell').should('have.text', this.versioningStateEnabled); } @@ -92,21 +101,23 @@ export class BucketsPageHelper extends PageHelper { cy.get('input[id=versioning]').should('not.be.checked'); cy.get('label[for=versioning]').click(); cy.get('input[id=versioning]').should('be.checked'); - cy.contains('button', 'Edit Bucket').click(); + // Check if the owner is updated + this.getTableCell(this.columnIndex.name, name) + .parent() + .find(`datatable-body-cell:nth-child(${this.columnIndex.owner})`) + .should(($elements) => { + const bucketName = $elements.text(); + expect(bucketName).to.eq(new_owner); + }); + // wait to be back on buckets page with table visible and click this.getExpandCollapseElement(name).click(); - // check its details table for edited owner field - cy.get('.table.table-striped.table-bordered') - .first() - .should('contains.text', new_owner) - .as('bucketDataTable'); - // Check versioning enabled: - cy.get('@bucketDataTable').find('tr').its(2).find('td').last().should('have.text', new_owner); - cy.get('@bucketDataTable').find('tr').its(11).find('td').last().as('versioningValueCell'); + cy.get('.table.table-striped.table-bordered').first().as('bucketDataTable'); + cy.get('@bucketDataTable').find('tr').its(0).find('td').last().as('versioningValueCell'); cy.get('@versioningValueCell').should('have.text', this.versioningStateEnabled); -- 2.39.5