diff --git a/e2e/protractor.conf.js b/e2e/protractor.conf.js index 44b20685fae5e095094e36b6482e52f6f4890333..500dbdf9f082055cd82cbdeecd0a2d33c1370a7a 100644 --- a/e2e/protractor.conf.js +++ b/e2e/protractor.conf.js @@ -42,7 +42,7 @@ const localConfig = { // polyfill for node10 or lower if (typeof globalThis === 'undefined') global.globalThis = {} jasmine.getEnv().addReporter({ - specDone: async ({ status, id, fullName, ...rest }) => { + specDone: async ({ status, id, message, fullName, ...rest }) => { if (status === 'failed') { console.log(`spec failed, taking screenshot`) const b64 = await globalThis.IAVBase.takeScreenshot() @@ -55,7 +55,7 @@ const localConfig = { ) await asyncWrite( path.join(dir, `${id}.txt`), - JSON.stringify({ id, status, fullName }, null, 2), + JSON.stringify({ id, status, message, fullName }, null, 2), 'utf-8' ) } diff --git a/e2e/src/advanced/urlParsing.prod.e2e-spec.js b/e2e/src/advanced/urlParsing.prod.e2e-spec.js index 9158ecb3f134271d4600843e1fa57a0047366318..c761e47e3e8c84dcbb34a03bf5f01916490359a7 100644 --- a/e2e/src/advanced/urlParsing.prod.e2e-spec.js +++ b/e2e/src/advanced/urlParsing.prod.e2e-spec.js @@ -1,6 +1,4 @@ const { AtlasPage } = require("../util") -const proxy = require('selenium-webdriver/proxy') -const { ARIA_LABELS } = require('../../../common/constants') describe('> url parsing', () => { let iavPage @@ -77,12 +75,19 @@ describe('> url parsing', () => { await iavPage.wait(5000) await iavPage.waitForAsync() const log = await iavPage.getLog() - const filteredLog = log.filter(({ message }) => !/Access-Control-Allow-Origin/.test(message)) + const filteredLog = log + // in headless & non gpu mode, a lot of webgl warnings are thrown + .filter(({ level }) => level.toString() === 'SEVERE') + .filter(({ message }) => !/Access-Control-Allow-Origin/.test(message)) // expecting some errors in the console. In catastrophic event, there will most likely be looped errors (on each render cycle) + // capture logs and write to spec https://stackoverflow.com/a/24980483/6059235 expect( filteredLog.length - ).toBeLessThan(50) + ).toBeLessThan( + 50, + JSON.stringify(filteredLog) + ) }) it('> if niftiLayers are defined, parcellation layer should be hidden', async () => {