X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/b8992f7bd95dbbf75d1c1afd55ac323053ee1340..ced486022308d18befcb1c83676c7d34ecc85f9d:/cypress/integration/banner-tooltip.spec.js diff --git a/cypress/integration/banner-tooltip.spec.js b/cypress/integration/banner-tooltip.spec.js index 11fee98c..df84abe9 100644 --- a/cypress/integration/banner-tooltip.spec.js +++ b/cypress/integration/banner-tooltip.spec.js @@ -20,39 +20,6 @@ describe('Collection panel tests', function () { cy.getUser('collectionuser1', 'Collection', 'User', false, true) .as('activeUser').then(function () { activeUser = this.activeUser; - } - ) - - cy.getAll('@adminUser') - .then(function([adminUser]) { - cy.createCollection(adminUser.token, { - name: `BannerTooltipTest${Math.floor(Math.random() * 999999)}`, - owner_uuid: adminUser.user.uuid, - }).as('bannerCollection'); - - cy.getAll('@bannerCollection') - .then(function ([bannerCollection]) { - - collectionUUID=bannerCollection.uuid; - - cy.loginAs(adminUser); - - cy.goToPath(`/collections/${bannerCollection.uuid}`); - - cy.get('[data-cy=upload-button]').click(); - - cy.fixture('files/banner.html').as('banner'); - cy.fixture('files/tooltips.txt').as('tooltips'); - - cy.getAll('@banner', '@tooltips') - .then(([banner, tooltips]) => { - console.log(tooltips) - cy.get('[data-cy=drag-and-drop]').upload(btoa(banner), 'banner.html'); - cy.get('[data-cy=drag-and-drop]').upload(btoa(tooltips), 'tooltips.json'); - }); - - cy.get('[data-cy=form-submit-btn]').click(); - }); }); cy.on('uncaught:exception', (err, runnable) => {console.error(err)}); }); @@ -60,18 +27,15 @@ describe('Collection panel tests', function () { beforeEach(function () { cy.clearCookies(); cy.clearLocalStorage(); - cy.intercept({ method: 'GET', hostname: 'localhost', url: '**/arvados/v1/config?nocache=*' }, (req) => { - req.reply((res) => { - res.body.Workbench.BannerUUID = collectionUUID; - }); - }); }); it('should re-show the banner', () => { - cy.wait(8000); + setupTheEnvironment(); cy.loginAs(adminUser); + cy.wait(2000); + cy.get('[data-cy=confirmation-dialog-ok-btn]').click(); cy.get('[title=Notifications]').click(); @@ -84,10 +48,12 @@ describe('Collection panel tests', function () { it('should show tooltips and remove tooltips as localStorage key is present', () => { - cy.wait(8000); + setupTheEnvironment(); cy.loginAs(adminUser); + cy.wait(2000); + cy.get('[data-cy=side-panel-tree]').then(($el) => { const el = $el.get(0) //native DOM element expect(el._tippy).to.exist; @@ -105,4 +71,45 @@ describe('Collection panel tests', function () { expect(el._tippy).to.be.undefined; }); }); + + const setupTheEnvironment = () => { + cy.createCollection(adminUser.token, { + name: `BannerTooltipTest${Math.floor(Math.random() * 999999)}`, + owner_uuid: adminUser.user.uuid, + }).as('bannerCollection'); + + cy.getAll('@bannerCollection') + .then(function ([bannerCollection]) { + + collectionUUID=bannerCollection.uuid; + + cy.loginAs(adminUser); + + cy.goToPath(`/collections/${bannerCollection.uuid}`); + + cy.get('[data-cy=upload-button]').click(); + + cy.fixture('files/banner.html').as('banner'); + cy.fixture('files/tooltips.txt').as('tooltips'); + + cy.getAll('@banner', '@tooltips') + .then(([banner, tooltips]) => { + cy.get('[data-cy=drag-and-drop]').upload(banner, 'banner.html', false); + cy.get('[data-cy=drag-and-drop]').upload(tooltips, 'tooltips.json', false); + }); + + cy.get('[data-cy=form-submit-btn]').click(); + cy.get('[data-cy=form-submit-btn]').should('not.exist'); + cy.get('[data-cy=collection-files-right-panel]') + .contains('banner.html').should('exist'); + cy.get('[data-cy=collection-files-right-panel]') + .contains('tooltips.json').should('exist'); + + cy.intercept({ method: 'GET', url: '**/arvados/v1/config?nocache=*' }, (req) => { + req.reply((res) => { + res.body.Workbench.BannerUUID = collectionUUID; + }); + }); + }); + } });