Fix e2e vue-cli Babel 8 tests (#13050)
Co-authored-by: Henry Zhu <hi@henryzoo.com>
This commit is contained in:
parent
327b4cec49
commit
8c445e60ba
@ -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
|
||||
|
||||
|
||||
79
scripts/integration-tests/patches/vue-cli-babel-8.patch
Normal file
79
scripts/integration-tests/patches/vue-cli-babel-8.patch
Normal 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__"')
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user