Skip to content

Commit de791e1

Browse files
committed
fix(plugin-eslint): handle rules which emit column 0
1 parent 1b71a3b commit de791e1

File tree

2 files changed

+46
-3
lines changed

2 files changed

+46
-3
lines changed

packages/plugin-eslint/src/lib/runner/transform.ts

+7-3
Original file line numberDiff line numberDiff line change
@@ -66,9 +66,13 @@ function convertIssue(issue: LintIssue): Issue {
6666
file: issue.filePath,
6767
position: {
6868
startLine: issue.line,
69-
startColumn: issue.column,
70-
endLine: issue.endLine,
71-
endColumn: issue.endColumn,
69+
...(issue.column > 0 && { startColumn: issue.column }),
70+
...(issue.endLine &&
71+
issue.endLine > 0 && {
72+
endLine: issue.endLine,
73+
}),
74+
...(issue.endColumn &&
75+
issue.endColumn > 0 && { endColumn: issue.endColumn }),
7276
},
7377
},
7478
};

packages/plugin-eslint/src/lib/runner/transform.unit.test.ts

+39
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,18 @@ describe('lintResultsToAudits', () => {
6060
},
6161
],
6262
},
63+
{
64+
filePath: 'src/app/graphql/generated.ts',
65+
messages: [
66+
{
67+
ruleId: 'unicorn/no-abusive-eslint-disable',
68+
message: 'Specify the rules you want to disable',
69+
severity: 1,
70+
line: 1,
71+
column: 0, // testing we omit non-positive columns
72+
},
73+
],
74+
},
6375
{
6476
filePath: 'src/app/pages/settings.component.ts',
6577
messages: [
@@ -78,13 +90,22 @@ describe('lintResultsToAudits', () => {
7890
'src/app/app.component.ts': {
7991
'max-lines': [500],
8092
'@typescript-eslint/no-explicit-any': [],
93+
'unicorn/no-abusive-eslint-disable': [],
8194
},
8295
'src/app/pages/settings.component.ts': {
8396
'max-lines': [500],
97+
'@typescript-eslint/no-explicit-any': [],
98+
'unicorn/no-abusive-eslint-disable': [],
99+
},
100+
'src/app/graphql/generated.ts': {
101+
'max-lines': [500],
102+
'@typescript-eslint/no-explicit-any': [],
103+
'unicorn/no-abusive-eslint-disable': [],
84104
},
85105
'src/app/app.component.spec.ts': {
86106
'max-lines': [800],
87107
'@typescript-eslint/no-explicit-any': [],
108+
'unicorn/no-abusive-eslint-disable': [],
88109
},
89110
},
90111
}),
@@ -182,6 +203,24 @@ describe('lintResultsToAudits', () => {
182203
],
183204
},
184205
},
206+
{
207+
slug: 'unicorn-no-abusive-eslint-disable',
208+
score: 0,
209+
value: 1,
210+
displayValue: '1 warning',
211+
details: {
212+
issues: [
213+
{
214+
message: 'Specify the rules you want to disable',
215+
severity: 'warning',
216+
source: {
217+
file: 'src/app/graphql/generated.ts',
218+
position: { startLine: 1 },
219+
},
220+
},
221+
],
222+
},
223+
},
185224
] satisfies AuditOutput[]);
186225
});
187226
});

0 commit comments

Comments
 (0)