Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit f68d82c

Browse files
committed
chore(plugin-typescript): switch to jest, fix some tests
1 parent 829b2e0 commit f68d82c

File tree

6 files changed

+46
-377
lines changed

6 files changed

+46
-377
lines changed
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
'use strict';
2+
3+
module.exports = {
4+
testEnvironment: 'node',
5+
transform: {
6+
'^.+\\.tsx?$': 'ts-jest'
7+
},
8+
testRegex: './tests/lib/.+\\.js$',
9+
collectCoverage: false,
10+
collectCoverageFrom: ['lib/**/*.{js,jsx,ts,tsx}'],
11+
moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx', 'json', 'node'],
12+
coverageReporters: ['text-summary', 'lcov']
13+
};

packages/eslint-plugin-typescript/lib/rules/generic-type-naming.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ function createTypeParameterChecker(context, rule) {
1515
const regex = new RegExp(rule);
1616

1717
return function checkTypeParameters(pnode) {
18-
const params = pnode.typeParameters && pnode.typeParameters.params;
18+
const params = pnode.typeParameters && pnode.typeParameters.parameters;
1919

2020
if (!Array.isArray(params) || params.length === 0) {
2121
return;

packages/eslint-plugin-typescript/lib/rules/no-empty-interface.js

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,22 @@ module.exports = {
3030
create(context) {
3131
return {
3232
TSInterfaceDeclaration(node) {
33-
if (node.body.body.length === 0) {
34-
context.report({
35-
node: node.id,
36-
message:
37-
(!node.extends || node.extends.length === 0)
38-
? 'An empty interface is equivalent to `{}`.'
39-
: 'An interface declaring no members is equivalent to its supertype.'
40-
});
33+
if (node.body.body.length !== 0) {
34+
return;
4135
}
36+
let message;
37+
if (!node.extends || node.extends.length === 0) {
38+
message = 'An empty interface is equivalent to `{}`.';
39+
} else if (node.extends.length === 1) {
40+
message = 'An interface declaring no members is equivalent to its supertype.'
41+
}
42+
if (!message) {
43+
return;
44+
}
45+
context.report({
46+
node: node.id,
47+
message
48+
});
4249
}
4350
};
4451
}

packages/eslint-plugin-typescript/lib/rules/no-misused-new.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ module.exports = {
6565
}
6666

6767
return {
68-
'TSInterfaceBody > TSConstructSignature'(node) {
68+
'TSInterfaceBody > TSConstructSignatureDeclaration'(node) {
6969
if (isMatchingParentType(node.parent.parent, node.typeAnnotation)) {
7070
// constructor
7171
context.report({

packages/eslint-plugin-typescript/package.json

Lines changed: 2 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,7 @@
2020
"scripts": {
2121
"docs": "eslint-docs",
2222
"docs:check": "eslint-docs check",
23-
"test": "nyc mocha tests --recursive --reporter=dot",
24-
"test:coverage": "nyc check-coverage --lines 95 --per-file",
23+
"test": "jest --coverage",
2524
"recommended:update": "node tools/update-recommended.js"
2625
},
2726
"dependencies": {
@@ -30,17 +29,10 @@
3029
},
3130
"devDependencies": {
3231
"eslint": "^5.9.0",
33-
"nyc": "^13.1.0",
34-
"eslint-docs": "^0.2.6",
35-
"mocha": "^5.2.0"
32+
"eslint-docs": "^0.2.6"
3633
},
3734
"peerDependencies": {
3835
"eslint": ">=4.13.1 < 6",
3936
"typescript": "~3.2.1"
40-
},
41-
"nyc": {
42-
"include": [
43-
"lib"
44-
]
4537
}
4638
}

0 commit comments

Comments
 (0)