Skip to content

Commit

Permalink
no-abusive-eslint-disable: Refactor tests (#845)
Browse files Browse the repository at this point in the history
  • Loading branch information
fisker committed Sep 30, 2020
1 parent 929e767 commit 9f72b63
Show file tree
Hide file tree
Showing 5 changed files with 87 additions and 37 deletions.
2 changes: 2 additions & 0 deletions rules/no-abusive-eslint-disable.js
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,8 @@ const create = context => ({
!result.groups.ruleId // But it did not specify any rules
) {
context.report({
// Can't set it at the given location as the warning
// will be ignored due to the disable comment
loc: {
start: {
...comment.loc.start,
Expand Down
64 changes: 28 additions & 36 deletions test/no-abusive-eslint-disable.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,20 +11,14 @@ const ruleTester = avaRuleTester(test, {
});

// Define rules for test
[
for (const rule of [
'plugin/rule',
'@scope/plugin/rule-name',
'@scope/rule-name',
'@scopewithoutplugin'
].forEach(rule => {
]) {
ruleTester.linter.defineRule(rule, {});
});

const error = [
{
messageId: 'no-abusive-eslint-disable'
}
];
}

ruleTester.run('no-abusive-eslint-disable', rule, {
valid: [
Expand Down Expand Up @@ -65,37 +59,35 @@ ruleTester.run('no-abusive-eslint-disable', rule, {
],
invalid: [
{
code: 'eval(); // eslint-disable-line',
errors: error
},
{
code: 'foo();\neval(); // eslint-disable-line',
errors: error
},
{
code: '/* eslint-disable */',
errors: error
},
{
code: 'foo();\n/* eslint-disable */\neval();',
errors: error
},
{
code: 'foo();\n/* eslint-disable-next-line */\neval();',
errors: error
},
{
code: '// eslint-disable-next-line\neval();',
errors: error
},
{
code: '// eslint-disable-next-line @scopewithoutplugin\neval();',
errors: error
code: outdent`
// eslint-disable-next-line @scopewithoutplugin
eval();
`,
errors: 1
}
]
});

const visualizeTester = visualizeRuleTester(test);
visualizeTester.run('no-abusive-eslint-disable', rule, [
'eval(); // eslint-disable-line'
'eval(); // eslint-disable-line',
outdent`
foo();
eval(); // eslint-disable-line
`,
'/* eslint-disable */',
outdent`
foo();
/* eslint-disable */
eval();
`,
outdent`
foo();
/* eslint-disable-next-line */
eval();
`,
outdent`
// eslint-disable-next-line
eval();
`
]);
56 changes: 56 additions & 0 deletions test/snapshots/no-abusive-eslint-disable.js.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,59 @@ Generated by [AVA](https://avajs.dev).
> 1 | eval(); // eslint-disable-line␊
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specify the rules you want to disable.␊
`

## no-abusive-eslint-disable - #2

> Snapshot 1
`␊
Error 1/1:␊
1 | foo();␊
> 2 | eval(); // eslint-disable-line␊
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specify the rules you want to disable.␊
`

## no-abusive-eslint-disable - #3

> Snapshot 1
`␊
Error 1/1:␊
> 1 | /* eslint-disable */␊
| ^^^^^^^^^^^^^^^^^^^^^ Specify the rules you want to disable.␊
`

## no-abusive-eslint-disable - #4

> Snapshot 1
`␊
Error 1/1:␊
1 | foo();␊
> 2 | /* eslint-disable */␊
| ^^^^^^^^^^^^^^^^^^^^^ Specify the rules you want to disable.␊
3 | eval();␊
`

## no-abusive-eslint-disable - #5

> Snapshot 1
`␊
Error 1/1:␊
1 | foo();␊
> 2 | /* eslint-disable-next-line */␊
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specify the rules you want to disable.␊
3 | eval();␊
`

## no-abusive-eslint-disable - #6

> Snapshot 1
`␊
Error 1/1:␊
> 1 | // eslint-disable-next-line␊
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Specify the rules you want to disable.␊
2 | eval();␊
`
Binary file modified test/snapshots/no-abusive-eslint-disable.js.snap
Binary file not shown.
2 changes: 1 addition & 1 deletion test/utils/visualize-rule-tester.js
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ class VisualizeRuleTester {

const fatalError = messages.find(({fatal}) => fatal);
if (fatalError) {
throw new Error(fatalError);
throw fatalError;
}

const {fixed, output} = fixable ? linter.verifyAndFix(code, verifyConfig) : {fixed: false};
Expand Down

0 comments on commit 9f72b63

Please sign in to comment.