diff --git a/resolvers/webpack/test/externals.js b/resolvers/webpack/test/externals.js index 9c5b001ee..27dec2033 100644 --- a/resolvers/webpack/test/externals.js +++ b/resolvers/webpack/test/externals.js @@ -3,6 +3,7 @@ const chai = require('chai'); const expect = chai.expect; const path = require('path'); +const semver = require('semver'); const webpack = require('../index'); @@ -12,9 +13,6 @@ describe('externals', function () { const settingsWebpack5 = { config: require(path.join(__dirname, './files/webpack.config.webpack5.js')), }; - const settingsWebpack5Async = { - config: require(path.join(__dirname, './files/webpack.config.webpack5.async-externals.js')), - }; it('works on just a string', function () { const resolved = webpack.resolve('bootstrap', file); @@ -52,13 +50,19 @@ describe('externals', function () { expect(resolved).to.have.property('path', null); }); - it('prevents using an asynchronous function for webpack 5', function () { - const resolved = webpack.resolve('underscore', file, settingsWebpack5Async); - expect(resolved).to.have.property('found', false); - }); + (semver.satisfies(process.version, '> 6') ? describe : describe.skip)('async function in webpack 5', function () { + const settingsWebpack5Async = () => ({ + config: require(path.join(__dirname, './files/webpack.config.webpack5.async-externals.js')), + }); + + it('prevents using an asynchronous function for webpack 5', function () { + const resolved = webpack.resolve('underscore', file, settingsWebpack5Async()); + expect(resolved).to.have.property('found', false); + }); - it('prevents using a function which uses Promise returned by getResolve for webpack 5', function () { - const resolved = webpack.resolve('graphql', file, settingsWebpack5Async); - expect(resolved).to.have.property('found', false); + it('prevents using a function which uses Promise returned by getResolve for webpack 5', function () { + const resolved = webpack.resolve('graphql', file, settingsWebpack5Async()); + expect(resolved).to.have.property('found', false); + }); }); });