From 49c03d4a22a1a13a41b6a6b809e1f60822c748f9 Mon Sep 17 00:00:00 2001 From: Elliot Nelson Date: Fri, 10 May 2019 06:18:35 -0400 Subject: [PATCH] Improve error handling in CI test launcher --- ci.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/ci.js b/ci.js index 49a122f4..b4dd45e1 100644 --- a/ci.js +++ b/ci.js @@ -120,6 +120,17 @@ async function getResults(driver) { return {specResults: flatten(specResults), failedSuiteResults: flatten(failedSuiteResults)}; } +function cleanup() { + return Promise.resolve().then(() => { + return Promise.all([ + driver ? driver.close() : true, + new Promise(resolve => server ? server.close(resolve) : resolve()) + ]); + }).catch(error => { + console.error(error); + }); +} + (async function () { await new Promise(resolve => { console.log("Creating an express app for browers to run the tests...") @@ -202,7 +213,6 @@ async function getResults(driver) { if (useSauce) { driver.executeScript(`sauce:job-result=${process.exitCode === 0}`); } -})().finally(() => { - return Promise.all([driver.close(), new Promise(resolve => server.close(resolve))]); -}); - +})().catch(error => { + console.error(error); +}).then(cleanup);