38 lines
1.4 KiB
JavaScript
38 lines
1.4 KiB
JavaScript
// Copyright IBM Corp. 2014,2016. All Rights Reserved.
|
|
// Node module: loopback-boot
|
|
// This file is licensed under the MIT License.
|
|
// License text available at https://opensource.org/licenses/MIT
|
|
|
|
var configLoader = require('../lib/config-loader');
|
|
var fs = require('fs-extra');
|
|
var path = require('path');
|
|
var expect = require('chai').expect;
|
|
var sandbox = require('./helpers/sandbox');
|
|
var appdir = require('./helpers/appdir');
|
|
|
|
describe('config-loader', function() {
|
|
beforeEach(sandbox.reset);
|
|
beforeEach(appdir.init);
|
|
|
|
it('does not cache loaded values', function() {
|
|
appdir.createConfigFilesSync();
|
|
appdir.writeConfigFileSync('middleware.json', {
|
|
'strong-error-handler': { params: { debug: false }},
|
|
});
|
|
appdir.writeConfigFileSync('middleware.development.json', {
|
|
'strong-error-handler': { params: { debug: true }},
|
|
});
|
|
|
|
// Here we load main config and merge it with DEV overrides
|
|
var config = configLoader.loadMiddleware(appdir.PATH, 'development');
|
|
expect(config['strong-error-handler'].params.debug, 'debug in development')
|
|
.to.equal(true);
|
|
|
|
// When we load the config file again in different environment,
|
|
// only the main file is loaded and no overrides are applied.
|
|
config = configLoader.loadMiddleware(appdir.PATH, 'production');
|
|
expect(config['strong-error-handler'].params.debug, 'debug in production')
|
|
.to.equal(false);
|
|
});
|
|
});
|