diff options
author | Florian Dold <florian.dold@gmail.com> | 2017-05-28 00:38:50 +0200 |
---|---|---|
committer | Florian Dold <florian.dold@gmail.com> | 2017-05-28 00:40:43 +0200 |
commit | 7fff4499fd915bcea3fa93b1aa8b35f4fe7a6027 (patch) | |
tree | 6de9a1aebd150a23b7f8c273ec657a5d0a18fe3e /node_modules/jest-util/build/installCommonGlobals.js | |
parent | 963b7a41feb29cc4be090a2446bdfe0c1f1bcd81 (diff) |
add linting (and some initial fixes)
Diffstat (limited to 'node_modules/jest-util/build/installCommonGlobals.js')
-rw-r--r-- | node_modules/jest-util/build/installCommonGlobals.js | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/node_modules/jest-util/build/installCommonGlobals.js b/node_modules/jest-util/build/installCommonGlobals.js new file mode 100644 index 000000000..33e58e3ab --- /dev/null +++ b/node_modules/jest-util/build/installCommonGlobals.js @@ -0,0 +1,58 @@ +/** +* Copyright (c) 2014-present, Facebook, Inc. All rights reserved. +* +* This source code is licensed under the BSD-style license found in the +* LICENSE file in the root directory of this source tree. An additional grant +* of patent rights can be found in the PATENTS file in the same directory. +* +* +*/ +'use strict'; + + + + +function deepCopy(obj) { + const newObj = {}; + let value; + for (const key in obj) { + value = obj[key]; + if (typeof value === 'object' && value !== null) { + value = deepCopy(value); + } + newObj[key] = value; + } + return newObj; +} + +module.exports = (global, globals) => { + // Forward some APIs + global.Buffer = Buffer; + + // `global.process` is mutated by FakeTimers. Make a copy of the + // object for the jsdom environment to prevent memory leaks. + // Overwrite toString to make it look like the real process object + let toStringOverwrite; + if (Symbol && Symbol.toStringTag) { + // $FlowFixMe + toStringOverwrite = { + [Symbol.toStringTag]: 'process' }; + + } + global.process = Object.assign({}, process, toStringOverwrite); + global.process.setMaxListeners = process.setMaxListeners.bind(process); + global.process.getMaxListeners = process.getMaxListeners.bind(process); + global.process.emit = process.emit.bind(process); + global.process.addListener = process.addListener.bind(process); + global.process.on = process.on.bind(process); + global.process.once = process.once.bind(process); + global.process.removeListener = process.removeListener.bind(process); + global.process.removeAllListeners = process.removeAllListeners.bind(process); + global.process.listeners = process.listeners.bind(process); + global.process.listenerCount = process.listenerCount.bind(process); + + global.setImmediate = setImmediate; + global.clearImmediate = clearImmediate; + + Object.assign(global, deepCopy(globals)); +};
\ No newline at end of file |