Skip to content

Commit 70ed712

Browse files
committed
test(prefer-importing-jest-globals): don't run on ESLint v7
1 parent f7e3a72 commit 70ed712

File tree

1 file changed

+80
-67
lines changed

1 file changed

+80
-67
lines changed

src/rules/__tests__/prefer-importing-jest-globals.test.ts

Lines changed: 80 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,10 @@
11
import dedent from 'dedent';
22
import rule from '../prefer-importing-jest-globals';
3-
import { FlatCompatRuleTester as RuleTester, espreeParser } from './test-utils';
3+
import {
4+
FlatCompatRuleTester as RuleTester,
5+
eslintMajorVersion,
6+
espreeParser,
7+
} from './test-utils';
48

59
const ruleTester = new RuleTester({
610
parser: espreeParser,
@@ -10,27 +14,93 @@ const ruleTester = new RuleTester({
1014
},
1115
});
1216

13-
ruleTester.run('prefer-importing-jest-globals', rule, {
14-
valid: [
15-
{
16-
code: dedent`
17+
if (eslintMajorVersion >= 8) {
18+
ruleTester.run('prefer-importing-jest-globals (string imports)', rule, {
19+
valid: [
20+
{
21+
code: dedent`
1722
// with import
18-
import { test, expect } from '@jest/globals';
23+
import { 'test' as test, expect } from '@jest/globals';
1924
test('should pass', () => {
2025
expect(true).toBeDefined();
2126
});
2227
`,
23-
parserOptions: { sourceType: 'module' },
24-
},
28+
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
29+
},
30+
{
31+
code: dedent`
32+
import { 'it' as itChecks } from '@jest/globals';
33+
itChecks("foo");
34+
`,
35+
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
36+
},
37+
],
38+
invalid: [
39+
{
40+
code: dedent`
41+
import { 'describe' as describe } from '@jest/globals';
42+
describe("suite", () => {
43+
test("foo");
44+
expect(true).toBeDefined();
45+
})
46+
`,
47+
output: dedent`
48+
import { 'describe' as describe, expect, test } from '@jest/globals';
49+
describe("suite", () => {
50+
test("foo");
51+
expect(true).toBeDefined();
52+
})
53+
`,
54+
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
55+
errors: [
56+
{
57+
endColumn: 7,
58+
column: 3,
59+
line: 3,
60+
messageId: 'preferImportingJestGlobal',
61+
},
62+
],
63+
},
64+
{
65+
code: dedent`
66+
import { 'describe' as context } from '@jest/globals';
67+
context("suite", () => {
68+
test("foo");
69+
expect(true).toBeDefined();
70+
})
71+
`,
72+
output: dedent`
73+
import { 'describe' as context, expect, test } from '@jest/globals';
74+
context("suite", () => {
75+
test("foo");
76+
expect(true).toBeDefined();
77+
})
78+
`,
79+
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
80+
errors: [
81+
{
82+
endColumn: 7,
83+
column: 3,
84+
line: 3,
85+
messageId: 'preferImportingJestGlobal',
86+
},
87+
],
88+
},
89+
],
90+
});
91+
}
92+
93+
ruleTester.run('prefer-importing-jest-globals', rule, {
94+
valid: [
2595
{
2696
code: dedent`
2797
// with import
28-
import { 'test' as test, expect } from '@jest/globals';
98+
import { test, expect } from '@jest/globals';
2999
test('should pass', () => {
30100
expect(true).toBeDefined();
31101
});
32102
`,
33-
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
103+
parserOptions: { sourceType: 'module' },
34104
},
35105
{
36106
code: dedent`
@@ -75,13 +145,6 @@ ruleTester.run('prefer-importing-jest-globals', rule, {
75145
`,
76146
parserOptions: { sourceType: 'module' },
77147
},
78-
{
79-
code: dedent`
80-
import { 'it' as itChecks } from '@jest/globals';
81-
itChecks("foo");
82-
`,
83-
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
84-
},
85148
{
86149
code: dedent`
87150
const { test } = require('@jest/globals');
@@ -175,56 +238,6 @@ ruleTester.run('prefer-importing-jest-globals', rule, {
175238
},
176239
],
177240
},
178-
{
179-
code: dedent`
180-
import { 'describe' as describe } from '@jest/globals';
181-
describe("suite", () => {
182-
test("foo");
183-
expect(true).toBeDefined();
184-
})
185-
`,
186-
output: dedent`
187-
import { 'describe' as describe, expect, test } from '@jest/globals';
188-
describe("suite", () => {
189-
test("foo");
190-
expect(true).toBeDefined();
191-
})
192-
`,
193-
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
194-
errors: [
195-
{
196-
endColumn: 7,
197-
column: 3,
198-
line: 3,
199-
messageId: 'preferImportingJestGlobal',
200-
},
201-
],
202-
},
203-
{
204-
code: dedent`
205-
import { 'describe' as context } from '@jest/globals';
206-
context("suite", () => {
207-
test("foo");
208-
expect(true).toBeDefined();
209-
})
210-
`,
211-
output: dedent`
212-
import { 'describe' as context, expect, test } from '@jest/globals';
213-
context("suite", () => {
214-
test("foo");
215-
expect(true).toBeDefined();
216-
})
217-
`,
218-
parserOptions: { sourceType: 'module', ecmaVersion: 2022 },
219-
errors: [
220-
{
221-
endColumn: 7,
222-
column: 3,
223-
line: 3,
224-
messageId: 'preferImportingJestGlobal',
225-
},
226-
],
227-
},
228241
{
229242
code: dedent`
230243
jest.useFakeTimers();

0 commit comments

Comments
 (0)