Add feature to disable component
This commit is contained in:
parent
bfcd3ff15e
commit
2c4b6f06a4
|
@ -480,7 +480,9 @@ function resolveMiddlewareParams(rootDir, params) {
|
|||
}
|
||||
|
||||
function buildComponentInstructions(rootDir, componentConfig) {
|
||||
return Object.keys(componentConfig).map(function(name) {
|
||||
return Object.keys(componentConfig)
|
||||
.filter(function(name) { return !!componentConfig[name]; })
|
||||
.map(function(name) {
|
||||
var sourceFile;
|
||||
if (name.indexOf('./') === 0 || name.indexOf('../') === 0) {
|
||||
// Relative path
|
||||
|
|
|
@ -468,9 +468,27 @@ describe('executor', function() {
|
|||
|
||||
boot(app, appdir.PATH);
|
||||
|
||||
expect(Object.keys(require.cache)).to.include(
|
||||
appdir.resolve('components/test-component/index.js'));
|
||||
|
||||
expect(app.componentOptions).to.eql({ option: 'value' });
|
||||
});
|
||||
|
||||
it('disables component when configuration is not set', function() {
|
||||
appdir.writeConfigFileSync('component-config.json', {
|
||||
'./components/test-component': false
|
||||
});
|
||||
|
||||
appdir.writeFileSync('components/test-component/index.js',
|
||||
'module.exports = ' +
|
||||
'function(app, options) { app.componentOptions = options; }');
|
||||
|
||||
boot(app, appdir.PATH);
|
||||
|
||||
expect(Object.keys(require.cache)).to.not.include(
|
||||
appdir.resolve('components/test-component/index.js'));
|
||||
});
|
||||
|
||||
it('configures middleware (that requires `this`)', function(done) {
|
||||
var passportPath = require.resolve('./fixtures/passport');
|
||||
|
||||
|
|
Loading…
Reference in New Issue