From ef5a02c16485707acdfd38f612c16513beeb4a6a Mon Sep 17 00:00:00 2001 From: Thomas Aylott Date: Fri, 15 Nov 2013 16:28:06 -0500 Subject: [PATCH] enable coverage logging from the worker --- .../__tests__/ReactWebWorker-test.js | 4 ++- src/test/worker.js | 28 +++++++++++++++---- 2 files changed, 26 insertions(+), 6 deletions(-) diff --git a/src/environment/__tests__/ReactWebWorker-test.js b/src/environment/__tests__/ReactWebWorker-test.js index 8703dbb2a1..287163bb7d 100644 --- a/src/environment/__tests__/ReactWebWorker-test.js +++ b/src/environment/__tests__/ReactWebWorker-test.js @@ -31,6 +31,8 @@ describe('ReactWebWorker', function() { var data = JSON.parse(e.data); if (data.type == 'error') { error = data.message + "\n" + data.stack; + } else if (data.type == 'log') { + console.log(data.message); } else { expect(data.type).toBe('done'); done = true; @@ -42,7 +44,7 @@ describe('ReactWebWorker', function() { }); runs(function() { if (error) { - console.log(error); + console.error(error); throw new Error(error); } }); diff --git a/src/test/worker.js b/src/test/worker.js index 7ba7e1ffc7..10691fda0b 100644 --- a/src/test/worker.js +++ b/src/test/worker.js @@ -1,6 +1,26 @@ /* jshint worker: true */ "use strict"; +if (typeof console == 'undefined') { + this.console = { + error: function(e){ + postMessage(JSON.stringify({ + type: 'error', + message: e.message, + stack: e.stack + })); + }, + log: function(message){ + postMessage(JSON.stringify({ + type: 'log', + message: message + })); + } + } +} + +console.log('worker BEGIN'); + // The UMD wrapper tries to store on `global` if `window` isn't available var global = {}; importScripts("phantomjs-shims.js"); @@ -8,13 +28,11 @@ importScripts("phantomjs-shims.js"); try { importScripts("../../build/react.js"); } catch (e) { - postMessage(JSON.stringify({ - type: 'error', - message: e.message, - stack: e.stack - })); + console.error(e); } postMessage(JSON.stringify({ type: 'done' })); + +console.log('worker END');