diff --git a/CHANGELOG.md b/CHANGELOG.md index 241e2d4b..ad819d31 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -36,6 +36,7 @@ Special thanks to the following contributors: @B1gG, @codac, @ezeholz, @khassel, - Cleaned up error handling in newsfeed and calendar modules for real - Updated default WEATHER module such that a provider can optionally set a custom unit-of-measure for precipitation (`weatherObject.precipitationUnits`) - Update documentation. +- Update jest tests: Reset changes on js/logger.js, mock logger.js in global_vars tests. ### Removed diff --git a/js/logger.js b/js/logger.js index b7c94a0e..93a5bb53 100644 --- a/js/logger.js +++ b/js/logger.js @@ -22,7 +22,7 @@ root.Log = factory(root.config); } })(this, function (config) { - let logLevel = { + const logLevel = { debug: Function.prototype.bind.call(console.debug, console), log: Function.prototype.bind.call(console.log, console), info: Function.prototype.bind.call(console.info, console), @@ -32,14 +32,10 @@ groupCollapsed: Function.prototype.bind.call(console.groupCollapsed, console), groupEnd: Function.prototype.bind.call(console.groupEnd, console), time: Function.prototype.bind.call(console.time, console), - timeEnd: Function.prototype.bind.call(console.timeEnd, console) + timeEnd: Function.prototype.bind.call(console.timeEnd, console), + timeStamp: Function.prototype.bind.call(console.timeStamp, console) }; - // the timeStamp instruction fails when running the tests so it is not added in test environment - if (typeof process === "object" && process.env.NODE_ENV.trim() !== "test") { - logLevel = Object.assign(logLevel, { timeStamp: Function.prototype.bind.call(console.timeStamp, console) }); - } - logLevel.setLogLevel = function (newLevel) { if (newLevel) { Object.keys(logLevel).forEach(function (key, index) { diff --git a/package.json b/package.json index 1f87c764..5a2a419c 100644 --- a/package.json +++ b/package.json @@ -100,14 +100,8 @@ "**/tests/unit/**/*.[jt]s?(x)" ], "testPathIgnorePatterns": [ - "/tests/unit/setup_unit.js" - ], - "setupFiles": [ - "/tests/unit/setup_unit.js" - ], - "moduleNameMapper": { - "logger": "/js/logger.js" - } + "/tests/unit/mocks" + ] }, { "displayName": "e2e", diff --git a/tests/unit/global_vars/defaults_modules_spec.js b/tests/unit/global_vars/defaults_modules_spec.js index 08899a2d..c0a7f0e4 100644 --- a/tests/unit/global_vars/defaults_modules_spec.js +++ b/tests/unit/global_vars/defaults_modules_spec.js @@ -22,7 +22,15 @@ beforeAll(function () { sandbox.require = function (filename) { // This modifies the global slightly, // but supplies vm with essential code - return require(filename); + if (filename === "logger") { + return require("../mocks/logger.js"); + } else { + try { + return require(filename); + } catch { + // ignore + } + } }; vm.runInNewContext(code, sandbox, fileName); diff --git a/tests/unit/global_vars/root_path_spec.js b/tests/unit/global_vars/root_path_spec.js index 249066dc..591f3ddb 100644 --- a/tests/unit/global_vars/root_path_spec.js +++ b/tests/unit/global_vars/root_path_spec.js @@ -22,7 +22,15 @@ beforeAll(function () { sandbox.require = function (filename) { // This modifies the global slightly, // but supplies vm with essential code - return require(filename); + if (filename === "logger") { + return require("../mocks/logger.js"); + } else { + try { + return require(filename); + } catch { + // ignore + } + } }; vm.runInNewContext(code, sandbox, fileName); diff --git a/tests/unit/mocks/logger.js b/tests/unit/mocks/logger.js new file mode 100644 index 00000000..56b5b123 --- /dev/null +++ b/tests/unit/mocks/logger.js @@ -0,0 +1,20 @@ +(function (root, factory) { + // Node, CommonJS-like + module.exports = factory(root.config); +})(this, function (config) { + let logLevel = { + debug: function () {}, + log: function () {}, + info: function () {}, + warn: function () {}, + error: function () {}, + group: function () {}, + groupCollapsed: function () {}, + groupEnd: function () {}, + time: function () {}, + timeEnd: function () {}, + timeStamp: function () {} + }; + + return logLevel; +}); diff --git a/tests/unit/setup_unit.js b/tests/unit/setup_unit.js deleted file mode 100644 index b4b7574c..00000000 --- a/tests/unit/setup_unit.js +++ /dev/null @@ -1 +0,0 @@ -console.log = () => {};