Skip to content

Commit 9d82e4b

Browse files
bytedoeJoshuaKGoldbergclaude
authored
chore: expand eslint-plugin rules test files glob (#12878)
Co-authored-by: Josh Goldberg <git@joshuakgoldberg.com> Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>
1 parent 14c6461 commit 9d82e4b

40 files changed

Lines changed: 16890 additions & 16887 deletions

File tree

‎eslint.config.mjs‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -706,7 +706,10 @@ export default defineConfig(
706706
},
707707
{
708708
name: 'eslint-plugin-rules-test-files',
709-
files: ['packages/eslint-plugin/tests/rules/*.test.ts'],
709+
files: [
710+
'packages/eslint-plugin-internal/tests/rules/**/*.test.ts',
711+
'packages/eslint-plugin/tests/{eslint-rules,rules}/**/*.test.ts',
712+
],
710713
rules: {
711714
'perfectionist/sort-objects': [
712715
'error',

‎packages/eslint-plugin-internal/tests/rules/debug-namespace.test.ts‎

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,32 @@ ruleTester.run('debug-namespace', rule, {
88
assertionOptions: {
99
requireData: true,
1010
},
11+
valid: [
12+
{
13+
code: "const log = debug('typescript-eslint:example:file');",
14+
filename: 'typescript-eslint/packages/example/file.ts',
15+
},
16+
{
17+
code: "const logCustom = debug('typescript-eslint:example:file');",
18+
filename: 'typescript-eslint/packages/example/file.ts',
19+
},
20+
{
21+
code: "const logCustom = debug('...');",
22+
filename: 'typescript-eslint/packages/example/file.ts',
23+
},
24+
{
25+
code: "debug('...');",
26+
filename: 'typescript-eslint/packages/example/file.ts',
27+
},
28+
{
29+
code: 'const log = debug(null);',
30+
filename: 'typescript-eslint/packages/example/file.ts',
31+
},
32+
{
33+
code: 'const log = debug(123);',
34+
filename: 'typescript-eslint/packages/example/file.ts',
35+
},
36+
],
1137
invalid: [
1238
{
1339
code: "const log = debug('not:correct');",
@@ -52,30 +78,4 @@ ruleTester.run('debug-namespace', rule, {
5278
output: "const log = debug('typescript-eslint:example:file');",
5379
},
5480
],
55-
valid: [
56-
{
57-
code: "const log = debug('typescript-eslint:example:file');",
58-
filename: 'typescript-eslint/packages/example/file.ts',
59-
},
60-
{
61-
code: "const logCustom = debug('typescript-eslint:example:file');",
62-
filename: 'typescript-eslint/packages/example/file.ts',
63-
},
64-
{
65-
code: "const logCustom = debug('...');",
66-
filename: 'typescript-eslint/packages/example/file.ts',
67-
},
68-
{
69-
code: "debug('...');",
70-
filename: 'typescript-eslint/packages/example/file.ts',
71-
},
72-
{
73-
code: 'const log = debug(null);',
74-
filename: 'typescript-eslint/packages/example/file.ts',
75-
},
76-
{
77-
code: 'const log = debug(123);',
78-
filename: 'typescript-eslint/packages/example/file.ts',
79-
},
80-
],
8181
});

‎packages/eslint-plugin-internal/tests/rules/eqeq-nullish.test.ts‎

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,16 @@ ruleTester.run('eqeq-nullish', rule, {
88
assertionOptions: {
99
requireData: true,
1010
},
11+
valid: [
12+
'null == a;',
13+
'foo != null;',
14+
'foo === bar;',
15+
'foo !== bar;',
16+
// We're not trying to duplicate eqeqeq's reports.
17+
'a == b;',
18+
'something == undefined;',
19+
'undefined != something;',
20+
],
1121
invalid: [
1222
{
1323
code: 'something === undefined;',
@@ -85,14 +95,4 @@ ruleTester.run('eqeq-nullish', rule, {
8595
],
8696
},
8797
],
88-
valid: [
89-
'null == a;',
90-
'foo != null;',
91-
'foo === bar;',
92-
'foo !== bar;',
93-
// We're not trying to duplicate eqeqeq's reports.
94-
'a == b;',
95-
'something == undefined;',
96-
'undefined != something;',
97-
],
9898
});

‎packages/eslint-plugin-internal/tests/rules/no-dynamic-tests.test.ts‎

Lines changed: 76 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,82 @@ ruleTester.run('no-dynamic-tests', rule, {
1616
assertionOptions: {
1717
requireData: true,
1818
},
19+
valid: [
20+
{
21+
code: `
22+
ruleTester.run('test', rule, {
23+
valid: ['const x = 1;'],
24+
invalid: [],
25+
});
26+
`,
27+
},
28+
{
29+
code: `
30+
ruleTester.run('test', rule, {
31+
valid: ['const x = 1;', 'let y = 2;'],
32+
invalid: [
33+
{
34+
code: 'var z = 3;',
35+
errors: [{ messageId: 'error' }],
36+
},
37+
],
38+
});
39+
`,
40+
},
41+
{
42+
code: `
43+
ruleTester.run('test', rule, {
44+
valid: [{ code: 'const x = 1;' }, { code: 'let y = 2;' }],
45+
invalid: [],
46+
});
47+
`,
48+
},
49+
{
50+
code: `
51+
ruleTester.run('test', rule, {
52+
valid: [noFormat\`const x = 1;\`],
53+
invalid: [],
54+
});
55+
`,
56+
},
57+
{
58+
code: `
59+
ruleTester.run('test', rule, {
60+
valid: [{ code: noFormat\`const x = 1;\` }],
61+
invalid: [],
62+
});
63+
`,
64+
},
65+
{
66+
code: `
67+
ruleTester.run('test', rule, {
68+
code: "import type { ValueOf } from './utils';",
69+
filename: path.resolve(
70+
PACKAGES_DIR,
71+
'ast-spec/src/expression/AssignmentExpression/spec.ts',
72+
),
73+
});
74+
`,
75+
},
76+
`
77+
ruleTester.run('test', rule, {
78+
valid: [],
79+
invalid: [
80+
{
81+
code: 'x.y!;',
82+
errors: [
83+
{
84+
column: 1,
85+
line: 1,
86+
messageId: 'noNonNull',
87+
suggestions: undefined,
88+
},
89+
],
90+
},
91+
],
92+
});
93+
`,
94+
],
1995
invalid: [
2096
// Function calls in test arrays
2197
{
@@ -356,80 +432,4 @@ ruleTester.run('test', rule, {
356432
`,
357433
},
358434
],
359-
valid: [
360-
{
361-
code: `
362-
ruleTester.run('test', rule, {
363-
valid: ['const x = 1;'],
364-
invalid: [],
365-
});
366-
`,
367-
},
368-
{
369-
code: `
370-
ruleTester.run('test', rule, {
371-
valid: ['const x = 1;', 'let y = 2;'],
372-
invalid: [
373-
{
374-
code: 'var z = 3;',
375-
errors: [{ messageId: 'error' }],
376-
},
377-
],
378-
});
379-
`,
380-
},
381-
{
382-
code: `
383-
ruleTester.run('test', rule, {
384-
valid: [{ code: 'const x = 1;' }, { code: 'let y = 2;' }],
385-
invalid: [],
386-
});
387-
`,
388-
},
389-
{
390-
code: `
391-
ruleTester.run('test', rule, {
392-
valid: [noFormat\`const x = 1;\`],
393-
invalid: [],
394-
});
395-
`,
396-
},
397-
{
398-
code: `
399-
ruleTester.run('test', rule, {
400-
valid: [{ code: noFormat\`const x = 1;\` }],
401-
invalid: [],
402-
});
403-
`,
404-
},
405-
{
406-
code: `
407-
ruleTester.run('test', rule, {
408-
code: "import type { ValueOf } from './utils';",
409-
filename: path.resolve(
410-
PACKAGES_DIR,
411-
'ast-spec/src/expression/AssignmentExpression/spec.ts',
412-
),
413-
});
414-
`,
415-
},
416-
`
417-
ruleTester.run('test', rule, {
418-
valid: [],
419-
invalid: [
420-
{
421-
code: 'x.y!;',
422-
errors: [
423-
{
424-
column: 1,
425-
line: 1,
426-
messageId: 'noNonNull',
427-
suggestions: undefined,
428-
},
429-
],
430-
},
431-
],
432-
});
433-
`,
434-
],
435435
});

0 commit comments

Comments
 (0)