diff --git a/__tests__/configurePlugins.test.js b/__tests__/configurePlugins.test.js index 69c341a09..414fcbfd8 100644 --- a/__tests__/configurePlugins.test.js +++ b/__tests__/configurePlugins.test.js @@ -16,3 +16,15 @@ test('setting a plugin to false removes it', () => { expect(configuredPlugins).toEqual(['fontSize', 'backgroundPosition']) }) + +test('passing only false removes all plugins', () => { + const plugins = { + fontSize: () => 'fontSize', + display: () => 'display', + backgroundPosition: () => 'backgroundPosition', + } + + const configuredPlugins = configurePlugins(false, plugins) + + expect(configuredPlugins).toEqual([]) +}) diff --git a/src/util/configurePlugins.js b/src/util/configurePlugins.js index 8cda0a189..64654c5f5 100644 --- a/src/util/configurePlugins.js +++ b/src/util/configurePlugins.js @@ -1,7 +1,7 @@ export default function(pluginConfig, plugins) { return Object.keys(plugins) .filter(pluginName => { - return pluginConfig[pluginName] !== false + return pluginConfig !== false && pluginConfig[pluginName] !== false }) .map(pluginName => { return plugins[pluginName]()