Skip to content

Commit 5d4309c

Browse files
committed
test: add tests
1 parent b3cb42c commit 5d4309c

26 files changed

+333
-38
lines changed

.eslintrc.js

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
module.exports = {
2+
root: true,
3+
env: {
4+
node: true
5+
},
6+
extends: [
7+
'plugin:vue/essential',
8+
'eslint:recommended',
9+
require.resolve('./recommended')
10+
],
11+
12+
overrides: [{
13+
files: ['test/**.spec.js'],
14+
env: {
15+
jest: true
16+
}
17+
}]
18+
}

index.js

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,22 @@ module.exports = {
55
// in turn delegates to the parser, specified in `parserOptions.parser`:
66
// https://github.com/vuejs/eslint-plugin-vue#what-is-the-use-the-latest-vue-eslint-parser-error
77
parserOptions: {
8-
parser: '@typescript-eslint/parser'
8+
parser: '@typescript-eslint/parser',
9+
extraFileExtensions: ['.vue'],
10+
ecmaFeatures: {
11+
jsx: true
12+
}
913
},
1014
extends: [
1115
'plugin:@typescript-eslint/eslint-recommended'
1216
],
13-
rules: {
14-
// The core 'no-unused-vars' rules does not work with type definitions
15-
'no-unused-vars': 'off',
16-
}
17+
overrides: [{
18+
files: ['*.ts', '*.tsx'],
19+
rules: {
20+
// The core 'no-unused-vars' rules (in the eslint:recommeded ruleset)
21+
// does not work with type definitions
22+
'no-unused-vars': 'off',
23+
'@typescript-eslint/no-unused-vars': 'error',
24+
}
25+
}]
1726
}

recommended.js

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,18 @@
11
module.exports = {
2-
extends: ['./index'],
2+
extends: [
3+
'./index',
4+
'plugin:@typescript-eslint/recommended'
5+
],
36

7+
// the ts-eslint recommended ruleset sets the parser so we need to set it back
8+
parser: 'vue-eslint-parser',
9+
10+
rules: {
11+
// this rule, if on, would require explicit return type on the `render` function
12+
'@typescript-eslint/explicit-function-return-type': 'off'
13+
},
14+
415
overrides: [
5-
{
6-
files: ['*.ts', '*.tsx'],
7-
// the ts-eslint recommended ruleset sets the parser so we need to set it back
8-
parser: 'vue-eslint-parser',
9-
extends: ['plugin:@typescript-eslint/recommended'],
10-
rules: {
11-
'@typescript-eslint/explicit-function-return-type': 'off'
12-
}
13-
},
1416
{
1517
files: ['shims-tsx.d.ts'],
1618
rules: {

test/default/.eslintrc.js

Lines changed: 0 additions & 14 deletions
This file was deleted.

test/fixtures/allow-js/App.vue

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<script>
2+
const a = 0
3+
a = 1
4+
</script>

test/fixtures/allow-js/main.js

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
let a = b + 1
2+
export default a

test/fixtures/allow-js/tsconfig.json

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"compilerOptions": {
3+
"target": "esnext",
4+
"module": "esnext",
5+
"strict": true,
6+
"jsx": "preserve",
7+
"importHelpers": true,
8+
"moduleResolution": "node",
9+
"experimentalDecorators": true,
10+
"esModuleInterop": true,
11+
"allowSyntheticDefaultImports": true,
12+
"sourceMap": true,
13+
"baseUrl": ".",
14+
"lib": [
15+
"esnext",
16+
"dom",
17+
"dom.iterable",
18+
"scripthost"
19+
]
20+
},
21+
"include": [
22+
"**/*.ts",
23+
"**/*.tsx",
24+
"**/*.vue"
25+
],
26+
"exclude": [
27+
"node_modules"
28+
]
29+
}

test/default/src/App.vue renamed to test/fixtures/default/src/App.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<template>
22
<div id="app">
3-
<img alt="Vue logo" src="./assets/logo.png">
3+
<span>Logo</span>
44
<HelloWorld msg="Welcome to Your Vue.js + TypeScript App"/>
55
</div>
66
</template>
File renamed without changes.

0 commit comments

Comments
 (0)