From ee382915be4f98e90029b5776ff4cbe1c0126f37 Mon Sep 17 00:00:00 2001 From: Johann-S Date: Thu, 19 Apr 2018 09:27:49 +0200 Subject: [PATCH] detect test exceeded maximum duration on Sauce Labs --- build/saucelabs-unit-test.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/build/saucelabs-unit-test.js b/build/saucelabs-unit-test.js index 5a0142e033..b4d952536d 100644 --- a/build/saucelabs-unit-test.js +++ b/build/saucelabs-unit-test.js @@ -25,6 +25,10 @@ const jsUnitSaucelabs = new JSUnitSaucelabs({ const testURL = 'http://localhost:3000/js/tests/index.html?hidepassed' const browsersFile = require(path.resolve(__dirname, './sauce_browsers.json')) +const errorMessages = [ + 'Test exceeded maximum duration', + 'Test exceeded maximum duration after 180 seconds' +] let jobsDone = 0 let jobsSucceeded = 0 @@ -43,11 +47,12 @@ const waitingCallback = (error, body, id) => { }, 2000) } else { const test = body['js tests'][0] + const platform = test.platform.join(', ') let passed = false let errorStr = false if (test.result !== null) { - if (typeof test.result === 'string' && test.result === 'Test exceeded maximum duration') { + if (typeof test.result === 'string' && errorMessages.includes(test.result)) { errorStr = test.result } else { passed = test.result.total === test.result.passed @@ -55,12 +60,12 @@ const waitingCallback = (error, body, id) => { } console.log(`Tested ${testURL}`) - console.log(`Platform: ${test.platform.join(', ')}`) - console.log(`Passed: ${passed.toString()}`) + console.log(`Platform: ${platform}`) + console.log(`Passed: ${passed}`) console.log(`URL: ${test.url}\n`) if (errorStr) { - console.error(errorStr) + console.error(`${platform}: ${errorStr}`) } if (passed) {