summaryrefslogtreecommitdiffstats
path: root/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw
diff options
context:
space:
mode:
Diffstat (limited to 'src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw')
-rw-r--r--src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.e2e-spec.ts6
-rw-r--r--src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.po.ts24
-rw-r--r--src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.e2e-spec.ts14
-rw-r--r--src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.po.ts26
4 files changed, 41 insertions, 29 deletions
diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.e2e-spec.ts
index 99c0732fc..8b05c309f 100644
--- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.e2e-spec.ts
+++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/buckets.e2e-spec.ts
@@ -18,7 +18,7 @@ describe('RGW buckets page', () => {
describe('create, edit & delete bucket tests', () => {
it('should create bucket', () => {
buckets.navigateTo('create');
- buckets.create(bucket_name, BucketsPageHelper.USERS[0], 'default-placement');
+ buckets.create(bucket_name, BucketsPageHelper.USERS[0]);
buckets.getFirstTableCell(bucket_name).should('exist');
});
@@ -38,7 +38,7 @@ describe('RGW buckets page', () => {
it('should create bucket with object locking enabled', () => {
buckets.navigateTo('create');
- buckets.create(bucket_name, BucketsPageHelper.USERS[0], 'default-placement', true);
+ buckets.create(bucket_name, BucketsPageHelper.USERS[0], true);
buckets.getFirstTableCell(bucket_name).should('exist');
});
@@ -57,7 +57,7 @@ describe('RGW buckets page', () => {
it('should test invalid input in edit owner field', () => {
buckets.navigateTo('create');
- buckets.create(bucket_name, BucketsPageHelper.USERS[0], 'default-placement');
+ buckets.create(bucket_name, BucketsPageHelper.USERS[0]);
buckets.testInvalidEdit(bucket_name);
buckets.navigateTo();
buckets.delete(bucket_name);
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 47b0639bc..91f852024 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
@@ -22,16 +22,12 @@ export class BucketsPageHelper extends PageHelper {
return this.selectOption('owner', owner);
}
- private selectPlacementTarget(placementTarget: string) {
- return this.selectOption('placement-target', placementTarget);
- }
-
private selectLockMode(lockMode: string) {
return this.selectOption('lock_mode', lockMode);
}
@PageHelper.restrictTo(pages.create.url)
- create(name: string, owner: string, placementTarget: string, isLocking = false) {
+ create(name: string, owner: string, isLocking = false) {
// Enter in bucket name
cy.get('#bid').type(name);
@@ -39,10 +35,6 @@ export class BucketsPageHelper extends PageHelper {
this.selectOwner(owner);
cy.get('#owner').should('have.class', 'ng-valid');
- // Select bucket placement target:
- this.selectPlacementTarget(placementTarget);
- cy.get('#placement-target').should('have.class', 'ng-valid');
-
if (isLocking) {
cy.get('#lock_enabled').click({ force: true });
// Select lock mode:
@@ -59,7 +51,6 @@ export class BucketsPageHelper extends PageHelper {
@PageHelper.restrictTo(pages.create.url)
checkForDefaultEncryption() {
- cy.get("cd-helper[aria-label='toggle encryption helper']").click();
cy.get("a[aria-label='click here']").click();
cy.get('cd-modal').within(() => {
cy.get('input[id=s3Enabled]').should('be.checked');
@@ -70,7 +61,9 @@ export class BucketsPageHelper extends PageHelper {
edit(name: string, new_owner: string, isLocking = false) {
this.navigateEdit(name);
- cy.get('input[name=placement-target]').should('have.value', 'default-placement');
+ // Placement target is not allowed to be edited and should be hidden
+ cy.get('input[name=placement-target]').should('not.exist');
+
this.selectOwner(new_owner);
// If object locking is enabled versioning shouldn't be visible
@@ -171,15 +164,6 @@ export class BucketsPageHelper extends PageHelper {
// Check that error message was printed under owner drop down field
cy.get('#owner + .invalid-feedback').should('have.text', 'This field is required.');
- // Check invalid placement target input
- this.selectOwner(BucketsPageHelper.USERS[1]);
- // The drop down error message will not appear unless a valid option is previsously selected.
- this.selectPlacementTarget('default-placement');
- this.selectPlacementTarget('-- Select a placement target --');
- cy.get('@nameInputField').click(); // Trigger validation
- cy.get('#placement-target').should('have.class', 'ng-invalid');
- cy.get('#placement-target + .invalid-feedback').should('have.text', 'This field is required.');
-
// Clicks the Create Bucket button but the page doesn't move.
// Done by testing for the breadcrumb
cy.contains('button', 'Create Bucket').click(); // Clicks Create Bucket button
diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.e2e-spec.ts b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.e2e-spec.ts
index 597f7d1be..80a8b0ec9 100644
--- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.e2e-spec.ts
+++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.e2e-spec.ts
@@ -9,11 +9,21 @@ describe('RGW roles page', () => {
});
describe('Create, Edit & Delete rgw roles', () => {
+ const roleName = 'testRole';
+
it('should create rgw roles', () => {
roles.navigateTo('create');
- roles.create('testRole', '/', '{}');
+ roles.create(roleName, '/', '{}');
roles.navigateTo();
- roles.checkExist('testRole', true);
+ roles.checkExist(roleName, true);
+ });
+
+ it('should edit rgw role', () => {
+ roles.edit(roleName, 3);
+ });
+
+ it('should delete rgw role', () => {
+ roles.delete(roleName);
});
});
});
diff --git a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.po.ts b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.po.ts
index b72ca5df9..717655b2f 100644
--- a/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.po.ts
+++ b/src/pybind/mgr/dashboard/frontend/cypress/e2e/rgw/roles.po.ts
@@ -11,18 +11,36 @@ export class RolesPageHelper extends PageHelper {
columnIndex = {
roleName: 2,
path: 3,
- arn: 4
+ arn: 4,
+ createDate: 5,
+ maxSessionDuration: 6
};
@PageHelper.restrictTo(pages.create.url)
create(name: string, path: string, policyDocument: string) {
- cy.get('#formly_3_string_role_name_0').type(name);
- cy.get('#formly_3_textarea_role_assume_policy_doc_2').type(policyDocument);
- cy.get('#formly_3_string_role_path_1').type(path);
+ cy.get('[id$="string_role_name_0"]').type(name);
+ cy.get('[id$="role_assume_policy_doc_2"]').type(policyDocument);
+ cy.get('[id$="role_path_1"]').type(path);
cy.get("[aria-label='Create Role']").should('exist').click();
cy.get('cd-crud-table').should('exist');
}
+ edit(name: string, maxSessionDuration: number) {
+ this.navigateEdit(name);
+ cy.get('[id$="max_session_duration_1"]').clear().type(maxSessionDuration.toString());
+ cy.get("[aria-label='Edit Role']").should('exist').click();
+ cy.get('cd-crud-table').should('exist');
+
+ this.getTableCell(this.columnIndex.roleName, name)
+ .click()
+ .parent()
+ .find(`datatable-body-cell:nth-child(${this.columnIndex.maxSessionDuration})`)
+ .should(($elements) => {
+ const roleName = $elements.map((_, el) => el.textContent).get();
+ expect(roleName).to.include(`${maxSessionDuration} hours`);
+ });
+ }
+
@PageHelper.restrictTo(pages.index.url)
checkExist(name: string, exist: boolean) {
this.getTableCell(this.columnIndex.roleName, name).should(($elements) => {