]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
mgr/dashboard: fix rgw buckets e2e
authorNizamudeen A <nia@redhat.com>
Wed, 16 Aug 2023 09:16:42 +0000 (14:46 +0530)
committerNizamudeen A <nia@redhat.com>
Wed, 16 Aug 2023 09:16:42 +0000 (14:46 +0530)
Fixes: https://tracker.ceph.com/issues/62458
Signed-off-by: Nizamudeen A <nia@redhat.com>
src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.po.ts

index a27be3c6ba48767b4fb3bda9a5fb88ce10f17d53..47b0639bc917abab00e6c06da56e245a4d6a80ad 100644 (file)
@@ -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);