Skip to content

Commit 5edc395

Browse files
committed
retain defining no-undef in ESLint < 9
1 parent b0f5afd commit 5edc395

File tree

2 files changed

+15
-0
lines changed

2 files changed

+15
-0
lines changed

tests/helpers/ruleTester.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,11 @@ if (semver.major(eslintPkg.version) >= 9) {
7878
}
7979

8080
const ruleIdSplit = ruleId.split('/');
81+
82+
if (ruleIdSplit.length !== 2) {
83+
throw new Error('ruleId should be in the format: plugin-name/rule-name');
84+
}
85+
8186
const pluginName = ruleIdSplit[0];
8287
const ruleName = ruleIdSplit[1];
8388

tests/lib/rules/jsx-no-undef.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,11 @@
99
// Requirements
1010
// -----------------------------------------------------------------------------
1111

12+
const semver = require('semver');
13+
const eslintPkg = require('eslint/package.json');
1214
const RuleTester = require('../../helpers/ruleTester');
15+
const getRuleDefiner = require('../../helpers/getRuleDefiner');
16+
const getESLintCoreRule = require('../../helpers/getESLintCoreRule');
1317
const rule = require('../../../lib/rules/jsx-no-undef');
1418

1519
const parsers = require('../../helpers/parsers');
@@ -28,6 +32,12 @@ const parserOptions = {
2832

2933
const ruleTester = new RuleTester({ parserOptions });
3034

35+
// In ESLint >= 9, it isn't possible to redefine a core rule, but it isn't necessary anyway since the core rules are certainly already available in the RuleTester/Linter
36+
if (semver.major(eslintPkg.version) < 9) {
37+
const ruleDefiner = getRuleDefiner(ruleTester);
38+
ruleDefiner.defineRule('no-undef', getESLintCoreRule('no-undef'));
39+
}
40+
3141
ruleTester.run('jsx-no-undef', rule, {
3242
valid: parsers.all([
3343
{

0 commit comments

Comments
 (0)