Merge branch '17579-Clear-table-filter-when-changing-the-project' into main
authorDaniel Kutyła <daniel.kutyla@contractors.roche.com>
Thu, 16 Dec 2021 16:11:03 +0000 (17:11 +0100)
committerDaniel Kutyła <daniel.kutyla@contractors.roche.com>
Thu, 16 Dec 2021 16:11:13 +0000 (17:11 +0100)
closes #17579

Arvados-DCO-1.1-Signed-off-by: Daniel Kutyła <daniel.kutyla@contractors.roche.com>

1  2 
cypress/integration/collection.spec.js

index bd211b1a7198a060122f66a1ba6278b2df6b5e63,6c1727fb453ffdd0e89254fd382cd9c4465bfd6e..82a26cef6f325993a199643934a26ab7b2d0b43e
@@@ -595,86 -595,6 +595,86 @@@ describe('Collection panel tests', func
          })
      });
  
 +    it('moves a collection to a different project', function () {
 +        const collName = `Test Collection ${Math.floor(Math.random() * 999999)}`;
 +        const projName = `Test Project ${Math.floor(Math.random() * 999999)}`;
 +        const fileName = `Test_File_${Math.floor(Math.random() * 999999)}`;
 +
 +        cy.createCollection(adminUser.token, {
 +            name: collName,
 +            owner_uuid: activeUser.user.uuid,
 +            manifest_text: `. 37b51d194a7513e45b56f6524f2d51f2+3 0:3:${fileName}\n`,
 +        }).as('testCollection');
 +        cy.createGroup(adminUser.token, {
 +            name: projName,
 +            group_class: 'project',
 +            owner_uuid: activeUser.user.uuid,
 +        }).as('testProject');
 +
 +        cy.getAll('@testCollection', '@testProject')
 +            .then(function ([testCollection, testProject]) {
 +                cy.loginAs(activeUser);
 +                cy.goToPath(`/collections/${testCollection.uuid}`);
 +                cy.get('[data-cy=collection-files-panel]').should('contain', fileName);
 +                cy.get('[data-cy=collection-info-panel]')
 +                    .should('not.contain', projName)
 +                    .and('not.contain', testProject.uuid);
 +                cy.get('[data-cy=collection-panel-options-btn]').click();
 +                cy.get('[data-cy=context-menu]').contains('Move to').click();
 +                cy.get('[data-cy=form-dialog]')
 +                    .should('contain', 'Move to')
 +                    .within(() => {
 +                        cy.get('[data-cy=projects-tree-home-tree-picker]')
 +                            .find('i')
 +                            .click();
 +                        cy.get('[data-cy=projects-tree-home-tree-picker]')
 +                            .contains(projName)
 +                            .click();
 +                    });
 +                cy.get('[data-cy=form-submit-btn]').click();
 +                cy.get('[data-cy=snackbar]')
 +                    .contains('Collection has been moved')
 +                cy.get('[data-cy=collection-info-panel]')
 +                    .contains(projName).and('contain', testProject.uuid);
 +                // Double check that the collection is in the project
 +                cy.goToPath(`/projects/${testProject.uuid}`);
 +                cy.get('[data-cy=project-panel]').should('contain', collName);
 +            });
 +    });
 +
 +    it('makes a copy of an existing collection', function() {
 +        const collName = `Test Collection ${Math.floor(Math.random() * 999999)}`;
 +        const copyName = `Copy of: ${collName}`;
 +
 +        cy.createCollection(adminUser.token, {
 +            name: collName,
 +            owner_uuid: activeUser.user.uuid,
 +            manifest_text: ". 37b51d194a7513e45b56f6524f2d51f2+3 0:3:some-file\n",
 +        }).as('collection').then(function () {
 +            cy.loginAs(activeUser)
 +            cy.goToPath(`/collections/${this.collection.uuid}`);
 +            cy.get('[data-cy=collection-files-panel]')
 +                .should('contain', 'some-file');
 +            cy.get('[data-cy=collection-panel-options-btn]').click();
 +            cy.get('[data-cy=context-menu]').contains('Make a copy').click();
 +            cy.get('[data-cy=form-dialog]')
 +                .should('contain', 'Make a copy')
 +                .within(() => {
 +                    cy.get('[data-cy=projects-tree-home-tree-picker]')
 +                        .contains('Projects')
 +                        .click();
 +                    cy.get('[data-cy=form-submit-btn]').click();
 +                });
 +            cy.get('[data-cy=snackbar]')
 +                .contains('Collection has been copied.')
 +            cy.get('[data-cy=snackbar-goto-action]').click();
 +            cy.get('[data-cy=project-panel]')
 +                .contains(copyName).click();
 +            cy.get('[data-cy=collection-files-panel]')
 +                .should('contain', 'some-file');
 +        });
 +    });
 +
      it('uses the collection version browser to view a previous version', function () {
          const colName = `Test Collection ${Math.floor(Math.random() * 999999)}`;
  
  
                          cy.get('[data-cy=form-submit-btn]').click();
  
-                         cy.get('button[aria-label=Remove]').click({ multiple: true });
+                         cy.get('button[aria-label=Remove]').should('exist');
+                         cy.get('button[aria-label=Remove]').click({ multiple: true, force: true });
  
                          cy.get('[data-cy=form-submit-btn]').should('not.exist');
                      });