X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/5ea93d2e3c077f9cad78f8176a903ced7ceea62e..3f7e1a8afad27920adf8f03ce82eeb1ae58aa84f:/cypress/integration/group-manage.spec.js diff --git a/cypress/integration/group-manage.spec.js b/cypress/integration/group-manage.spec.js index d17cefe943..ffe2c8c4df 100644 --- a/cypress/integration/group-manage.spec.js +++ b/cypress/integration/group-manage.spec.js @@ -6,6 +6,7 @@ describe('Group manage tests', function() { let activeUser; let adminUser; let otherUser; + let userThree; const groupName = `Test group (${Math.floor(999999 * Math.random())})`; before(function() { @@ -28,11 +29,11 @@ describe('Group manage tests', function() { otherUser = this.otherUser; } ); - }); - - beforeEach(function() { - cy.clearCookies(); - cy.clearLocalStorage(); + cy.getUser('userThree', 'User', 'Three', false, true) + .as('userThree').then(function() { + userThree = this.userThree; + } + ); }); it('creates a new group', function() { @@ -44,37 +45,43 @@ describe('Group manage tests', function() { // Create new group cy.get('[data-cy=groups-panel-new-group]').click(); cy.get('[data-cy=form-dialog]') - .should('contain', 'Create a group') + .should('contain', 'New Group') .within(() => { cy.get('input[name=name]').type(groupName); - cy.get('button[type=submit]').click(); + cy.get('[data-cy=users-field] input').type("three"); }); - + cy.get('[role=tooltip]').click(); + cy.get('[data-cy=form-dialog]').within(() => { + cy.get('[data-cy=form-submit-btn]').click(); + }) + // Check that the group was created cy.get('[data-cy=groups-panel-data-explorer]').contains(groupName).click(); - cy.get('[data-cy=group-members-data-explorer]').contains('Active User'); + cy.get('[data-cy=group-members-data-explorer]').contains(activeUser.user.full_name); + cy.get('[data-cy=group-members-data-explorer]').contains(userThree.user.full_name); }); it('adds users to the group', function() { // Add other user to the group cy.get('[data-cy=group-member-add]').click(); - cy.get('[data-cy=form-dialog]') - .should('contain', 'Add users') + cy.get('.sharing-dialog') + .should('contain', 'Sharing settings') .within(() => { - cy.get('input').type("other"); + cy.get('[data-cy=invite-people-field] input').type("other"); }); - cy.contains('Other User').click(); - cy.get('[data-cy=form-dialog] button[type=submit]').click(); + cy.get('[role=tooltip]').click(); + cy.get('.sharing-dialog').contains('Save').click(); + cy.get('.sharing-dialog').contains('Close').click(); // Check that both users are present with appropriate permissions cy.get('[data-cy=group-members-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) .parents('tr') .within(() => { cy.contains('Read'); }); cy.get('[data-cy=group-members-data-explorer] tr') - .contains('Active User') + .contains(activeUser.user.full_name) .parents('tr') .within(() => { cy.contains('Manage'); @@ -84,7 +91,7 @@ describe('Group manage tests', function() { it('changes permission level of a member', function() { // Test change permission level cy.get('[data-cy=group-members-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) .parents('tr') .within(() => { cy.contains('Read') @@ -97,7 +104,7 @@ describe('Group manage tests', function() { .contains('Write') .click(); cy.get('[data-cy=group-members-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) .parents('tr') .within(() => { cy.contains('Write'); @@ -113,20 +120,20 @@ describe('Group manage tests', function() { // Check that other user is hidden cy.get('[data-cy=group-details-permissions-tab]').click(); cy.get('[data-cy=group-permissions-data-explorer]') - .should('not.contain', 'Other User') + .should('not.contain', otherUser.user.full_name) cy.get('[data-cy=group-details-members-tab]').click(); // Test unhide cy.get('[data-cy=group-members-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) .parents('tr') .within(() => { - cy.get('[data-cy=user-hidden-checkbox]').click(); + cy.get('[data-cy=user-visible-checkbox]').click(); }); // Check that other user is visible cy.get('[data-cy=group-details-permissions-tab]').click(); cy.get('[data-cy=group-permissions-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) .parents('tr') .within(() => { cy.contains('Read'); @@ -134,15 +141,15 @@ describe('Group manage tests', function() { // Test re-hide cy.get('[data-cy=group-details-members-tab]').click(); cy.get('[data-cy=group-members-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) .parents('tr') .within(() => { - cy.get('[data-cy=user-hidden-checkbox]').click(); + cy.get('[data-cy=user-visible-checkbox]').click(); }); // Check that other user is hidden cy.get('[data-cy=group-details-permissions-tab]').click(); cy.get('[data-cy=group-permissions-data-explorer]') - .should('not.contain', 'Other User') + .should('not.contain', otherUser.user.full_name) }); it('displays resources shared with the group', function() { @@ -183,14 +190,25 @@ describe('Group manage tests', function() { // Remove other user cy.get('[data-cy=group-members-data-explorer]') - .contains('Other User') + .contains(otherUser.user.full_name) + .parents('tr') + .within(() => { + cy.get('[data-cy=resource-delete-button]').click(); + }); + cy.get('[data-cy=confirmation-dialog-ok-btn]').click(); + cy.get('[data-cy=group-members-data-explorer]') + .should('not.contain', otherUser.user.full_name); + + // Remove user three + cy.get('[data-cy=group-members-data-explorer]') + .contains(userThree.user.full_name) .parents('tr') .within(() => { cy.get('[data-cy=resource-delete-button]').click(); }); cy.get('[data-cy=confirmation-dialog-ok-btn]').click(); cy.get('[data-cy=group-members-data-explorer]') - .should('not.contain', 'Other User'); + .should('not.contain', userThree.user.full_name); }); it('renames the group', function() { @@ -207,10 +225,10 @@ describe('Group manage tests', function() { // Rename the group cy.get('[data-cy=form-dialog]') - .should('contain', 'Edit Project') + .should('contain', 'Edit Group') .within(() => { cy.get('input[name=name]').clear().type(groupName + ' (renamed)'); - cy.get('button[type=submit]').click(); + cy.get('button').contains('Save').click(); }); // Check that the group was renamed @@ -247,7 +265,7 @@ describe('Group manage tests', function() { cy.get('[data-cy=group-members-data-explorer]') .within(() => { cy.get('[data-cy=group-member-add]').should('not.exist'); - cy.get('[data-cy=user-hidden-checkbox] input').should('be.disabled'); + cy.get('[data-cy=user-visible-checkbox] input').should('be.disabled'); cy.get('[data-cy=resource-delete-button]').should('be.disabled'); cy.get('[data-cy=edit-permission-button]').should('not.exist'); });