X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/75022caec274dcdb1d7983b66c783e96584b5a10..a167017da0181a84d0c5493364bc0f7f3fa3e942:/cypress/integration/favorites.spec.js diff --git a/cypress/integration/favorites.spec.js b/cypress/integration/favorites.spec.js index 9d51cc7fc9..db9a0d5f39 100644 --- a/cypress/integration/favorites.spec.js +++ b/cypress/integration/favorites.spec.js @@ -44,16 +44,14 @@ describe('Favorites tests', function () { }); }); - it('can copy selected into the collection', () => { - cy.loginAs(adminUser); - + // Disabled while addressing #18587 + it.skip('can copy selected into the collection', () => { cy.createCollection(adminUser.token, { name: `Test source collection ${Math.floor(Math.random() * 999999)}`, manifest_text: ". 37b51d194a7513e45b56f6524f2d51f2+3 0:3:bar\n" }).as('testSourceCollection').then(function (testSourceCollection) { cy.shareWith(adminUser.token, activeUser.user.uuid, testSourceCollection.uuid, 'can_read'); }); - cy.createCollection(adminUser.token, { name: `Test target collection ${Math.floor(Math.random() * 999999)}`, }).as('testTargetCollection').then(function (testTargetCollection) { @@ -63,29 +61,22 @@ describe('Favorites tests', function () { cy.getAll('@testSourceCollection', '@testTargetCollection') .then(function ([testSourceCollection, testTargetCollection]) { - cy.get('.layout-pane-primary').contains('Projects').click(); - cy.get('main').contains(testSourceCollection.name).click(); + cy.loginAs(activeUser); + cy.goToPath(`/collections/${testSourceCollection.uuid}`); cy.get('[data-cy=collection-files-panel]').contains('bar'); - cy.get('[data-cy=collection-files-panel]').find('input[type=checkbox]').click({ force: true }); + cy.get('[data-cy=collection-files-panel]').find('input[type=checkbox]').click(); cy.get('[data-cy=collection-files-panel-options-btn]').click(); cy.get('[data-cy=context-menu]') .contains('Copy selected into the collection').click(); - cy.get('[data-cy=projects-tree-favourites-tree-picker]') .find('i') .click(); - cy.get('[data-cy=projects-tree-favourites-tree-picker]') .contains(testTargetCollection.name) .click(); - cy.get('[data-cy=form-submit-btn]').click(); - - cy.get('.layout-pane-primary') - .contains('Projects').click(); - - cy.get('main').contains(testTargetCollection.name).click(); - + cy.get('.layout-pane-primary').contains('Projects').click(); + cy.goToPath(`/collections/${testTargetCollection.uuid}`); cy.get('[data-cy=collection-files-panel]').contains('bar'); }); }); @@ -128,7 +119,10 @@ describe('Favorites tests', function () { }); cy.get('[data-cy=form-dialog]').within(function () { - cy.get('[data-cy=projects-tree-favourites-tree-picker]').find('i').click(); + // must use .then to avoid selecting instead of expanding https://github.com/cypress-io/cypress/issues/5529 + cy.get('[data-cy=projects-tree-favourites-tree-picker]') + .find('i') + .then(el => el.click()); cy.contains(myProject1.name); cy.contains(mySharedWritableProject.name); cy.get('[data-cy=projects-tree-favourites-tree-picker]') @@ -142,7 +136,50 @@ describe('Favorites tests', function () { }); }); - it('can view favourites in workflow', () => { + it('can edit project and collections in favorites', () => { + cy.createProject({ + owningUser: adminUser, + projectName: 'mySharedWritableProject', + canWrite: true, + addToFavorites: true + }); + + cy.createCollection(adminUser.token, { + owner_uuid: adminUser.user.uuid, + name: `Test target collection ${Math.floor(Math.random() * 999999)}`, + }).as('testTargetCollection').then(function (testTargetCollection) { + cy.addToFavorites(adminUser.token, adminUser.user.uuid, testTargetCollection.uuid); + }); + + cy.getAll('@mySharedWritableProject', '@testTargetCollection') + .then(function ([mySharedWritableProject, testTargetCollection]) { + cy.loginAs(adminUser); + + cy.get('[data-cy=side-panel-tree]').contains('My Favorites').click(); + + const newProjectName = `New project name ${mySharedWritableProject.name}`; + const newProjectDescription = `New project description ${mySharedWritableProject.name}`; + const newCollectionName = `New collection name ${testTargetCollection.name}`; + const newCollectionDescription = `New collection description ${testTargetCollection.name}`; + + cy.testEditProjectOrCollection('main', mySharedWritableProject.name, newProjectName, newProjectDescription); + cy.testEditProjectOrCollection('main', testTargetCollection.name, newCollectionName, newCollectionDescription, false); + + cy.get('[data-cy=side-panel-tree]').contains('Projects').click(); + + cy.get('main').contains(newProjectName).rightclick(); + cy.contains('Add to public favorites').click(); + cy.get('main').contains(newCollectionName).rightclick(); + cy.contains('Add to public favorites').click(); + + cy.get('[data-cy=side-panel-tree]').contains('Public Favorites').click(); + + cy.testEditProjectOrCollection('main', newProjectName, mySharedWritableProject.name, 'newProjectDescription'); + cy.testEditProjectOrCollection('main', newCollectionName, testTargetCollection.name, 'newCollectionDescription', false); + }); + }); + + it('can view favorites in workflow', () => { cy.createProject({ owningUser: adminUser, targetUser: activeUser, @@ -185,13 +222,16 @@ describe('Favorites tests', function () { cy.get('[data-cy=side-panel-button]').click(); - cy.get('#aside-menu-list').contains('Run a process').click(); + cy.get('#aside-menu-list').contains('Run a workflow').click(); cy.get('@testWorkflow') .then((testWorkflow) => { cy.get('main').contains(testWorkflow.name).click(); cy.get('[data-cy=run-process-next-button]').click(); - cy.get('[readonly]').click(); + cy.get('[data-cy=new-process-panel]') + .within(() => { + cy.contains('input').next().click(); + }); cy.get('[data-cy=choose-a-file-dialog]').as('chooseFileDialog'); cy.get('[data-cy=projects-tree-favourites-tree-picker]').contains('Favorites').closest('ul').find('i').click(); cy.get('@chooseFileDialog').find(`[data-id=${mySharedWritableProject.uuid}]`); @@ -206,7 +246,10 @@ describe('Favorites tests', function () { cy.get('main').contains(testWorkflow2.name).click(); cy.get('button').contains('Change Workflow').click(); cy.get('[data-cy=run-process-next-button]').click(); - cy.get('[readonly]').click(); + cy.get('[data-cy=new-process-panel]') + .within(() => { + cy.contains('image_collection').next().click(); + }); cy.get('[data-cy=choose-a-directory-dialog]').as('chooseDirectoryDialog'); cy.get('[data-cy=projects-tree-favourites-tree-picker]').contains('Favorites').closest('ul').find('i').click(); cy.get('@chooseDirectoryDialog').find(`[data-id=${mySharedWritableProject.uuid}]`); @@ -214,4 +257,4 @@ describe('Favorites tests', function () { }); }); }); -}); \ No newline at end of file +});