mattermost-desktop/test/specs/settings_test.js
2018-05-31 00:30:24 +09:00

51 lines
1.7 KiB
JavaScript

// Copyright (c) 2015-2016 Yuya Ochiai
// Copyright (c) 2016-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
import settings from '../../src/common/settings';
import buildConfig from '../../src/common/config/buildConfig';
import defaultPreferences from '../../src/common/config/defaultPreferences';
import pastDefaultPreferences from '../../src/common/config/pastDefaultPreferences';
describe('common/settings.js', () => {
it('should upgrade v0 config file', () => {
const v0Config = {
url: 'https://example.com/team',
};
const config = settings.upgrade(v0Config);
config.teams.length.should.equal(1);
config.teams[0].url.should.equal(v0Config.url);
config.version.should.equal(settings.version);
});
it('should merge teams with buildConfig.defaultTeams', () => {
const teams = [
{
name: 'test',
url: 'https://example.com',
},
];
const mergedTeams = settings.mergeDefaultTeams(teams);
mergedTeams.should.deep.equal([
{
name: 'test',
url: 'https://example.com',
},
...buildConfig.defaultTeams,
]);
});
});
describe('common/config/', () => {
it('pastDefaultPreferences should have each past version of defaultPreferences', () => {
for (let version = 0; version <= defaultPreferences.version; version++) {
pastDefaultPreferences[`${version}`].should.exist; // eslint-disable-line no-unused-expressions
}
});
it('defaultPreferences equal to one of pastDefaultPreferences', () => {
const pastPreferences = pastDefaultPreferences[`${defaultPreferences.version}`];
pastPreferences.should.deep.equal(defaultPreferences);
});
});