From a7e76765619b896cb782491a1fdcb85482824750 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20Burzy=C5=84ski?= Date: Sat, 19 Jan 2019 20:17:54 +0100 Subject: [PATCH] Fix usage with externalHelpers flag --- src/index.js | 2 +- .../.babelrc | 0 .../bar.js | 0 .../foo.js | 0 .../main.js | 0 test/test.js | 18 +++++++++--------- 6 files changed, 10 insertions(+), 10 deletions(-) rename test/samples/{external-helpers-deprecated => external-helpers}/.babelrc (100%) rename test/samples/{external-helpers-deprecated => external-helpers}/bar.js (100%) rename test/samples/{external-helpers-deprecated => external-helpers}/foo.js (100%) rename test/samples/{external-helpers-deprecated => external-helpers}/main.js (100%) diff --git a/src/index.js b/src/index.js index cf7f82a..8b6d24e 100644 --- a/src/index.js +++ b/src/index.js @@ -105,7 +105,7 @@ function createBabelPluginFactory(customCallback = returnObject) { ); } - if (helpers !== RUNTIME) { + if (helpers !== RUNTIME && !externalHelpers) { transformOptions = addBabelPlugin(transformOptions, helperPlugin); } diff --git a/test/samples/external-helpers-deprecated/.babelrc b/test/samples/external-helpers/.babelrc similarity index 100% rename from test/samples/external-helpers-deprecated/.babelrc rename to test/samples/external-helpers/.babelrc diff --git a/test/samples/external-helpers-deprecated/bar.js b/test/samples/external-helpers/bar.js similarity index 100% rename from test/samples/external-helpers-deprecated/bar.js rename to test/samples/external-helpers/bar.js diff --git a/test/samples/external-helpers-deprecated/foo.js b/test/samples/external-helpers/foo.js similarity index 100% rename from test/samples/external-helpers-deprecated/foo.js rename to test/samples/external-helpers/foo.js diff --git a/test/samples/external-helpers-deprecated/main.js b/test/samples/external-helpers/main.js similarity index 100% rename from test/samples/external-helpers-deprecated/main.js rename to test/samples/external-helpers/main.js diff --git a/test/test.js b/test/test.js index 8cad19e..4599f96 100644 --- a/test/test.js +++ b/test/test.js @@ -91,13 +91,6 @@ describe('rollup-plugin-babel', function() { }); }); - it('does not add helpers when externalHelpers option is truthy', () => { - return bundle('samples/class/main.js').then(({ code }) => { - assert.ok(code.indexOf('babelHelpers =') === -1, code); - assert.ok(code.indexOf(`${HELPERS}.classCallCheck =`) === -1, code); - }); - }); - it('does not babelify excluded code', () => { return bundle('samples/exclusions/main.js', { exclude: '**/foo.js' }).then(({ code }) => { assert.ok(code.indexOf('${foo()}') === -1, code); @@ -188,14 +181,21 @@ describe('rollup-plugin-babel', function() { }); }); - it('warns about deprecated usage with external-helper plugin', () => { + it('allows using external-helpers plugin in combination with externalHelpers flag', () => { + return bundle('samples/external-helpers/main.js', { externalHelpers: true }).then(({ code }) => { + assert.ok(code.indexOf('function _classCallCheck') === -1); + assert.ok(code.indexOf('babelHelpers.classCallCheck') !== -1); + }); + }); + + it('warns about deprecated usage with external-helpers plugin (without externalHelpers flag)', () => { /* eslint-disable no-console */ const messages = []; const originalWarn = console.warn; console.warn = msg => { messages.push(msg); }; - return bundle('samples/external-helpers-deprecated/main.js').then(() => { + return bundle('samples/external-helpers/main.js').then(() => { console.warn = originalWarn; assert.deepEqual(messages, [