-
Notifications
You must be signed in to change notification settings - Fork 227
/
no-mocks-import.test.js
53 lines (51 loc) · 1.51 KB
/
no-mocks-import.test.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
import { RuleTester } from 'eslint';
import rule from '../no-mocks-import';
const ruleTester = new RuleTester();
ruleTester.run('no-mocks-import', rule, {
valid: [
{
code: 'import something from "something"',
parserOptions: { sourceType: 'module' },
},
'require("somethingElse")',
'require("./__mocks__.js")',
'require("./__mocks__x")',
'require("./__mocks__x/x")',
'require("./x__mocks__")',
'require("./x__mocks__/x")',
'require()',
'var path = "./__mocks__.js"; require(path)',
'entirelyDifferent(fn)',
],
invalid: [
{
code: 'require("./__mocks__")',
errors: [{ endColumn: 22, column: 9, messageId: 'noManualImport' }],
},
{
code: 'require("./__mocks__/")',
errors: [{ endColumn: 23, column: 9, messageId: 'noManualImport' }],
},
{
code: 'require("./__mocks__/index")',
errors: [{ endColumn: 28, column: 9, messageId: 'noManualImport' }],
},
{
code: 'require("__mocks__")',
errors: [{ endColumn: 20, column: 9, messageId: 'noManualImport' }],
},
{
code: 'require("__mocks__/")',
errors: [{ endColumn: 21, column: 9, messageId: 'noManualImport' }],
},
{
code: 'require("__mocks__/index")',
errors: [{ endColumn: 26, column: 9, messageId: 'noManualImport' }],
},
{
code: 'import thing from "./__mocks__/index"',
parserOptions: { sourceType: 'module' },
errors: [{ endColumn: 38, column: 1, messageId: 'noManualImport' }],
},
],
});