diff --git a/README.md b/README.md index f0e92bad..38e53f22 100644 --- a/README.md +++ b/README.md @@ -118,7 +118,7 @@ A `package.json` Example "^.+\\.vue$": "@vue/vue2-jest" }, "globals": { - "@vue/vue2-jest": { + "vue-jest": { "transform": { "your-custom-block": "./custom-block-processor.js" } @@ -135,7 +135,7 @@ A `jest.config.js` Example - If you're using a dedicated configuration file like ```js module.exports = { globals: { - '@vue/vue2-jest': { + 'vue-jest': { transform: { 'your-custom-block': require('./custom-block-processor') } @@ -170,7 +170,7 @@ You can provide [TemplateCompileOptions](https://github.com/vuejs/component-comp { "jest": { "globals": { - "@vue/vue2-jest": { + "vue-jest": { "templateCompiler": { "transpileOptions": { "transforms": { @@ -195,7 +195,7 @@ You can provide [TemplateCompileOptions](https://github.com/vuejs/component-comp { "jest": { "globals": { - "@vue/vue2-jest": { + "vue-jest": { "pug": { "basedir": "mybasedir" } diff --git a/e2e/2.x/basic/components/ScriptAndScriptSetup.vue b/e2e/2.x/basic/components/ScriptAndScriptSetup.vue new file mode 100644 index 00000000..e3aa2fcb --- /dev/null +++ b/e2e/2.x/basic/components/ScriptAndScriptSetup.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/e2e/2.x/basic/test.js b/e2e/2.x/basic/test.js index a340be9c..9eb6b525 100644 --- a/e2e/2.x/basic/test.js +++ b/e2e/2.x/basic/test.js @@ -21,6 +21,7 @@ import Jsx from './components/Jsx.vue' import Constructor from './components/Constructor.vue' import { compileStyle } from '@vue/component-compiler-utils' import ScriptSetup from './components/ScriptSetup' +import ScriptAndScriptSetup from './components/ScriptAndScriptSetup' import ExtendedTsConfig from './components/ExtendedTsConfig.vue' jest.mock('@vue/component-compiler-utils', () => ({ @@ -165,6 +166,12 @@ test('processes SFC with diff --git a/e2e/3.x/babel-in-package/package.json b/e2e/3.x/babel-in-package/package.json index 3e0881ed..5c2ffe0f 100644 --- a/e2e/3.x/babel-in-package/package.json +++ b/e2e/3.x/babel-in-package/package.json @@ -12,6 +12,7 @@ "devDependencies": { "@babel/core": "^7.9.0", "@babel/preset-env": "^7.9.0", + "@vue/babel-plugin-jsx": "^1.1.5", "@vue/vue3-jest": "^29.0.0", "coffeescript": "^2.3.2", "jest": "29.x", @@ -34,6 +35,9 @@ "babel": { "presets": [ "@babel/env" + ], + "plugins": [ + "@vue/babel-plugin-jsx" ] } } diff --git a/e2e/3.x/babel-in-package/test.js b/e2e/3.x/babel-in-package/test.js index 8bc52e74..e5b7d33d 100644 --- a/e2e/3.x/babel-in-package/test.js +++ b/e2e/3.x/babel-in-package/test.js @@ -3,6 +3,7 @@ import { createApp, h } from 'vue' import TypeScript from './components/TypeScript.vue' import Basic from './components/Basic.vue' import Coffee from './components/Coffee.vue' +import Tsx from './components/Tsx.vue' function mount(Component, props, slots) { document.getElementsByTagName('html')[0].innerHTML = '' @@ -34,3 +35,8 @@ test('processes .vue files with lang set to typescript', () => { expect(document.querySelector('#parent').textContent).toBe('Parent') expect(document.querySelector('#child').textContent).toBe('Child') }) + +test('processes .vue files with lang set to tsx(typescript)', () => { + mount(Tsx) + expect(document.querySelector('div').textContent).toContain('tsx components') +}) diff --git a/e2e/3.x/basic/components/ScriptAndScriptSetup.vue b/e2e/3.x/basic/components/ScriptAndScriptSetup.vue new file mode 100644 index 00000000..e3aa2fcb --- /dev/null +++ b/e2e/3.x/basic/components/ScriptAndScriptSetup.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/e2e/3.x/basic/test.js b/e2e/3.x/basic/test.js index 3a5dddaa..504c44c7 100644 --- a/e2e/3.x/basic/test.js +++ b/e2e/3.x/basic/test.js @@ -24,6 +24,7 @@ import ScriptSetupSugarRef from './components/ScriptSetupSugarRef.vue' import FunctionalRenderFn from './components/FunctionalRenderFn.vue' import CompilerDirective from './components/CompilerDirective.vue' import ExtendedTsConfig from './components/ExtendedTsConfig.vue' +import ScriptAndScriptSetup from './components/ScriptAndScriptSetup.vue' // TODO: JSX for Vue 3? TSX? import Jsx from './components/Jsx.vue' @@ -214,3 +215,9 @@ test('handles extended tsconfig.json files', () => { const elm = document.querySelector('div') expect(elm).toBeDefined() }) + +test('processes SFC with both