diff --git a/src/common/deepmerge.js b/src/common/deepmerge.js new file mode 100644 index 00000000..4b5a649c --- /dev/null +++ b/src/common/deepmerge.js @@ -0,0 +1,10 @@ +const deepmerge = require('deepmerge'); + +function deepMergeProxy(x, y, options) { + if (process.env.TEST) { + return deepmerge(x, y, options); + } + return deepmerge.default(x, y, options); // due to webpack conversion +} + +module.exports = deepMergeProxy; diff --git a/src/common/settings.js b/src/common/settings.js index 67878da5..b0ec9116 100644 --- a/src/common/settings.js +++ b/src/common/settings.js @@ -3,10 +3,7 @@ const fs = require('fs'); const path = require('path'); -let deepmerge = require('deepmerge').default; -if (process.env.TEST) { - deepmerge = require('deepmerge'); // eslint-disable-line -} +const deepmerge = require('./deepmerge'); const settingsVersion = 1; const baseConfig = require('./config/base.json'); diff --git a/test/modules/environment.js b/test/modules/environment.js index 4fd19f02..ffe8abc7 100644 --- a/test/modules/environment.js +++ b/test/modules/environment.js @@ -1,5 +1,4 @@ 'use strict'; -process.env.TEST = 'test'; const chai = require('chai'); chai.should(); diff --git a/test/specs/settings_test.js b/test/specs/settings_test.js index 8db72848..071fcc99 100644 --- a/test/specs/settings_test.js +++ b/test/specs/settings_test.js @@ -2,6 +2,14 @@ const settings = require('../../src/common/settings'); const deepmerge = require('deepmerge'); describe('common/settings.js', () => { + before(() => { + process.env.TEST = 1; + }); + + after(() => { + delete process.env.TEST; + }); + it('should upgrade v0 config file', () => { const v0Config = { url: 'https://example.com/team'