Changes to have settings tests pass. test/specs/settings_test.js
This commit is contained in:
@@ -35,6 +35,7 @@
|
||||
"lint:js": "eslint --ext .js --ext .jsx ."
|
||||
},
|
||||
"devDependencies": {
|
||||
"deepmerge": "^1.5.2",
|
||||
"7zip-bin": "^2.0.4",
|
||||
"babel-core": "^6.24.1",
|
||||
"babel-eslint": "^7.2.3",
|
||||
|
@@ -4,7 +4,7 @@
|
||||
"showTrayIcon": false,
|
||||
"trayIconTheme": "light",
|
||||
"minimizeToTray": false,
|
||||
"version": "1",
|
||||
"version": 1,
|
||||
"notifications": {
|
||||
"flashWindow": 0
|
||||
},
|
||||
@@ -17,7 +17,7 @@
|
||||
"showTrayIcon": false,
|
||||
"trayIconTheme": "light",
|
||||
"minimizeToTray": false,
|
||||
"version": "1",
|
||||
"version": 1,
|
||||
"notifications": {
|
||||
"flashWindow": 0
|
||||
},
|
||||
|
@@ -1,7 +1,10 @@
|
||||
'use strict';
|
||||
|
||||
const fs = require('fs');
|
||||
const deepmerge = require('deepmerge').default;
|
||||
let deepmerge = require('deepmerge').default;
|
||||
if (process.env.TEST) {
|
||||
deepmerge = require('deepmerge'); // eslint-disable-line
|
||||
}
|
||||
|
||||
const settingsVersion = 1;
|
||||
const baseConfig = require('./config/base.json');
|
||||
@@ -32,7 +35,7 @@ function loadDefault(version, spellCheckerLocale) {
|
||||
}
|
||||
|
||||
function upgradeV0toV1(configV0) {
|
||||
var config = loadDefault('1');
|
||||
var config = loadDefault(1);
|
||||
config.teams.push({
|
||||
name: 'Primary team',
|
||||
url: configV0.url
|
||||
@@ -41,7 +44,7 @@ function upgradeV0toV1(configV0) {
|
||||
}
|
||||
|
||||
function upgrade(config, newAppVersion) {
|
||||
var configVersion = config.version ? config.version : '1';
|
||||
var configVersion = config.version ? config.version : 0;
|
||||
if (newAppVersion) {
|
||||
config.lastMattermostVersion = newAppVersion;
|
||||
}
|
||||
|
@@ -12,7 +12,7 @@
|
||||
"auto-launch": "^5.0.1",
|
||||
"bootstrap": "^3.3.7",
|
||||
"create-react-class": "^15.5.3",
|
||||
"deepmerge": "^1.5.1",
|
||||
"deepmerge": "^1.5.2",
|
||||
"electron-context-menu": "^0.9.0",
|
||||
"electron-devtools-installer": "^2.2.0",
|
||||
"electron-is-dev": "^0.1.2",
|
||||
|
@@ -1,4 +1,5 @@
|
||||
'use strict';
|
||||
process.env.TEST = 'test';
|
||||
|
||||
const chai = require('chai');
|
||||
chai.should();
|
||||
|
@@ -1,4 +1,5 @@
|
||||
const settings = require('../../src/common/settings');
|
||||
const deepmerge = require('deepmerge');
|
||||
|
||||
describe('common/settings.js', () => {
|
||||
it('should upgrade v0 config file', () => {
|
||||
@@ -10,4 +11,14 @@ describe('common/settings.js', () => {
|
||||
config.teams[0].url.should.equal(v0Config.url);
|
||||
config.version.should.equal(settings.version);
|
||||
});
|
||||
|
||||
it('should loadDefault config for version 1', () => {
|
||||
const baseConfig = require('../../src/common/config/base.json');
|
||||
const overrideConfig = require('../../src/common/config/override.json');
|
||||
const expectedDefaults = deepmerge(
|
||||
baseConfig[1], overrideConfig[1] || {}, {clone: true, arrayMerge: settings.deepMergeArray}
|
||||
);
|
||||
const defaultConfig = settings.loadDefault();
|
||||
defaultConfig.should.eql(expectedDefaults);
|
||||
});
|
||||
});
|
||||
|
Reference in New Issue
Block a user