From 78c67f9eb12ac7ea091f1809947935df1ddfc6ff Mon Sep 17 00:00:00 2001 From: Kyle Shockey Date: Wed, 22 Mar 2017 21:09:36 -0700 Subject: [PATCH] Refactor window wrapper for node testing --- src/core/window.js | 42 +++++++++++++++++++++++++----------------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/src/core/window.js b/src/core/window.js index b9d5f02a..1ee90912 100644 --- a/src/core/window.js +++ b/src/core/window.js @@ -1,20 +1,28 @@ -var win = { - location: {}, - history: {}, - open: () => {}, - close: () => {} -} - -try { - win = window - var props = ["File", "Blob", "FormData"] - for (var prop of props) { - if (prop in window) { - win[prop] = window[prop] - } +function makeWindow() { + var win = { + location: {}, + history: {}, + open: () => {}, + close: () => {} } -} catch( e ) { - console.error(e) + + if(typeof window === "undefined") { + return win + } + + try { + win = window + var props = ["File", "Blob", "FormData"] + for (var prop of props) { + if (prop in window) { + win[prop] = window[prop] + } + } + } catch( e ) { + console.error(e) + } + + return win } -export default win +module.exports = makeWindow()