diff --git a/bin/simulate b/bin/simulate index cb07fcd..d3b665e 100755 --- a/bin/simulate +++ b/bin/simulate @@ -2,16 +2,16 @@ // Copyright (c) Microsoft Corporation. All rights reserved. -var chalk = require('chalk'); +var simulateServer = require('taco-simulate-server'); var args; try { args = processArgs(process.argv); require('./../src/simulate')({platform: args.platform, target: args.target}).catch(function (e) { - console.log(chalk.red.bold(e.toString())); + simulateServer.log.error(e); }); } catch (e) { - console.log(chalk.red.bold(e.toString())); + simulateServer.log.error(e); } function processArgs(args) { diff --git a/src/simulate.js b/src/simulate.js index 9bd4bc8..ae0f401 100644 --- a/src/simulate.js +++ b/src/simulate.js @@ -18,5 +18,9 @@ module.exports = function (opts) { return cordovaServe.launchBrowser({target: target, url: urls.appUrl}); }).then(function () { return cordovaServe.launchBrowser({target: target, url: simHostUrl}); + }).catch(function (error) { + // Ensure server is closed, then rethrow so it can be handled by downstream consumers. + simulateServer.server && simulateServer.server.close(); + throw error; }); };