X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/90729d2947bdd88512263952819fef2c529c3473..dce08883afbf575127601743e2482c3bd8604d3a:/cypress/integration/favorites.spec.js diff --git a/cypress/integration/favorites.spec.js b/cypress/integration/favorites.spec.js index c9151483..9bc90ebd 100644 --- a/cypress/integration/favorites.spec.js +++ b/cypress/integration/favorites.spec.js @@ -44,7 +44,8 @@ describe('Favorites tests', function () { }); }); - it('can copy selected into the collection', () => { + // 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" @@ -132,7 +133,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, @@ -204,102 +248,4 @@ describe('Favorites tests', function () { }); }); }); - - ['workflow_with_array_fields.yaml', 'workflow_with_default_array_fields.yaml'].forEach((yamlfile) => - it('can select multi files when creating workflow '+yamlfile, () => { - cy.createProject({ - owningUser: activeUser, - projectName: 'myProject1', - addToFavorites: true - }); - - cy.createCollection(adminUser.token, { - name: `Test collection ${Math.floor(Math.random() * 999999)}`, - owner_uuid: activeUser.user.uuid, - manifest_text: ". 37b51d194a7513e45b56f6524f2d51f2+3 0:3:bar\n. 37b51d194a7513e45b56f6524f2d51f2+3 0:3:baz\n" - }) - .as('testCollection'); - - cy.createCollection(adminUser.token, { - name: `Test collection ${Math.floor(Math.random() * 999999)}`, - owner_uuid: activeUser.user.uuid, - manifest_text: `. 37b51d194a7513e45b56f6524f2d51f2+3 0:3:buz\n` - }) - .as('testCollection2'); - - cy.getAll('@myProject1', '@testCollection', '@testCollection2') - .then(function ([myProject1, testCollection, testCollection2]) { - cy.readFile('cypress/fixtures/'+yamlfile).then(workflow => { - cy.createWorkflow(adminUser.token, { - name: `TestWorkflow${Math.floor(Math.random() * 999999)}.cwl`, - definition: workflow, - owner_uuid: myProject1.uuid, - }) - .as('testWorkflow'); - }); - - cy.loginAs(activeUser); - - cy.get('main').contains(myProject1.name).click(); - - cy.get('[data-cy=side-panel-button]').click(); - - cy.get('#aside-menu-list').contains('Run a process').click(); - - cy.get('@testWorkflow') - .then((testWorkflow) => { - cy.get('main').contains(testWorkflow.name).click(); - cy.get('[data-cy=run-process-next-button]').click(); - - cy.get('label').contains('#main/foo').parent('div').find('input').click(); - cy.get('div[role=dialog]') - .within(() => { - cy.get('p').contains('Projects').closest('div[role=button]') - .within(() => { - cy.get('svg[role=presentation]') - .click({ multiple: true }); - }); - - cy.get(`[data-id=${testCollection.uuid}]`) - .find('i').click(); - - cy.contains('bar').closest('[data-action=TOGGLE_ACTIVE]').parent().find('input[type=checkbox]').click(); - - cy.contains('baz').closest('[data-action=TOGGLE_ACTIVE]').parent().find('input[type=checkbox]').click(); - - cy.get('[data-cy=ok-button]').click(); - }); - - cy.get('label').contains('#main/bar').parent('div').find('input').click(); - cy.get('div[role=dialog]') - .within(() => { - cy.get('p').contains('Projects').closest('div[role=button]') - .within(() => { - cy.get('svg[role=presentation]') - .click({ multiple: true }); - }); - - cy.get(`[data-id=${testCollection.uuid}]`) - .find('input[type=checkbox]').click(); - - cy.get(`[data-id=${testCollection2.uuid}]`) - .find('input[type=checkbox]').click(); - - cy.get('[data-cy=ok-button]').click(); - }); - }); - - cy.get('label').contains('#main/foo').parent('div') - .within(() => { - cy.contains('baz'); - cy.contains('bar'); - }); - - cy.get('label').contains('#main/bar').parent('div') - .within(() => { - cy.contains(testCollection.name); - cy.contains(testCollection2.name); - }); - }); - })); });