Fix e2e vue-cli Babel 8 tests (#13050)

Co-authored-by: Henry Zhu <hi@henryzoo.com>
This commit is contained in:
Nicolò Ribaudo 2021-03-25 19:23:18 +01:00 committed by GitHub
parent 327b4cec49
commit 8c445e60ba
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 85 additions and 0 deletions

View File

@ -30,6 +30,12 @@ node "$PWD"/../../utils/bump-babel-dependencies.js
yarn lerna exec -- node "$PWD"/../../utils/bump-babel-dependencies.js
yarn install
if [ "$BABEL_8_BREAKING" = true ] ; then
# Babel 8 defaults to "default, not ie 11", but this breaks vue-cli's tests
# which expect different ES features to be compiled.
patch -p1 < "$PWD"/../../patches/vue-cli-babel-8.patch
fi
# Test
CI=true yarn test -p babel,babel-preset-app

View File

@ -0,0 +1,79 @@
diff --git a/packages/@vue/babel-preset-app/__tests__/babel-preset.spec.js b/packages/@vue/babel-preset-app/__tests__/babel-preset.spec.js
index d57f42b..60c938a 100644
--- a/packages/@vue/babel-preset-app/__tests__/babel-preset.spec.js
+++ b/packages/@vue/babel-preset-app/__tests__/babel-preset.spec.js
@@ -3,7 +3,7 @@ const babel = require('@babel/core')
const preset = require('../index')
const defaultOptions = {
babelrc: false,
- presets: [preset],
+ presets: [[preset, { targets: { ie: 9 } }]],
filename: 'test-entry-file.js'
}
@@ -161,6 +161,7 @@ test('disable absoluteRuntime', () => {
`.trim(), {
babelrc: false,
presets: [[preset, {
+ targets: { ie: 9 },
absoluteRuntime: false
}]],
filename: 'test-entry-file.js'
@@ -183,6 +184,7 @@ test('should inject polyfills / helpers using "require" statements for a umd mod
`.trim(), {
babelrc: false,
presets: [[preset, {
+ targets: { ie: 9 },
absoluteRuntime: false
}]],
filename: 'test-entry-file.js'
@@ -200,6 +202,7 @@ test('should inject polyfills / helpers using "import" statements for an es modu
`.trim(), {
babelrc: false,
presets: [[preset, {
+ targets: { ie: 9 },
absoluteRuntime: false
}]],
filename: 'test-entry-file.js'
@@ -216,6 +219,7 @@ test('should not inject excluded polyfills', () => {
`.trim(), {
babelrc: false,
presets: [[preset, {
+ targets: { ie: 9 },
exclude: ['es.promise'],
polyfills: ['es.array.iterator', 'es.object.assign']
}]],
diff --git a/packages/@vue/cli-plugin-babel/__tests__/transpileDependencies.spec.js b/packages/@vue/cli-plugin-babel/__tests__/transpileDependencies.spec.js
index 1c5d6c2..6f90582 100644
--- a/packages/@vue/cli-plugin-babel/__tests__/transpileDependencies.spec.js
+++ b/packages/@vue/cli-plugin-babel/__tests__/transpileDependencies.spec.js
@@ -78,6 +78,14 @@ test('dep from node_modules should been transpiled when matched by transpileDepe
'vue.config.js',
`module.exports = { transpileDependencies: ['external-dep', '@scope/external-dep'] }`
)
+ await project.write(
+ 'babel.config.js',
+ `module.exports = {
+ presets: [
+ ["@vue/babel-preset-app", { targets: { ie: 9 } }]
+ ]
+ }`
+ )
await project.run('vue-cli-service build')
expect(await readVendorFile()).toMatch('return "__TEST__"')
@@ -89,6 +97,14 @@ test('dep from node_modules should been transpiled when transpileDependencies is
'vue.config.js',
`module.exports = { transpileDependencies: true }`
)
+ await project.write(
+ 'babel.config.js',
+ `module.exports = {
+ presets: [
+ ["@vue/babel-preset-app", { targets: { ie: 9 } }]
+ ]
+ }`
+ )
await project.run('vue-cli-service build')
expect(await readVendorFile()).toMatch('return "__TEST__"')