Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
epidemian
GitHub Repository: epidemian/eslint-plugin-import
Path: blob/main/tests/src/rules/no-self-import.js
829 views
1
import { test, testFilePath } from '../utils';
2
3
import { RuleTester } from 'eslint';
4
5
const ruleTester = new RuleTester();
6
const rule = require('rules/no-self-import');
7
8
const error = {
9
message: 'Module imports itself.',
10
};
11
12
ruleTester.run('no-self-import', rule, {
13
valid: [
14
test({
15
code: 'import _ from "lodash"',
16
filename: testFilePath('./no-self-import.js'),
17
}),
18
test({
19
code: 'import find from "lodash.find"',
20
filename: testFilePath('./no-self-import.js'),
21
}),
22
test({
23
code: 'import foo from "./foo"',
24
filename: testFilePath('./no-self-import.js'),
25
}),
26
test({
27
code: 'import foo from "../foo"',
28
filename: testFilePath('./no-self-import.js'),
29
}),
30
test({
31
code: 'import foo from "foo"',
32
filename: testFilePath('./no-self-import.js'),
33
}),
34
test({
35
code: 'import foo from "./"',
36
filename: testFilePath('./no-self-import.js'),
37
}),
38
test({
39
code: 'import foo from "@scope/foo"',
40
filename: testFilePath('./no-self-import.js'),
41
}),
42
test({
43
code: 'var _ = require("lodash")',
44
filename: testFilePath('./no-self-import.js'),
45
}),
46
test({
47
code: 'var find = require("lodash.find")',
48
filename: testFilePath('./no-self-import.js'),
49
}),
50
test({
51
code: 'var foo = require("./foo")',
52
filename: testFilePath('./no-self-import.js'),
53
}),
54
test({
55
code: 'var foo = require("../foo")',
56
filename: testFilePath('./no-self-import.js'),
57
}),
58
test({
59
code: 'var foo = require("foo")',
60
filename: testFilePath('./no-self-import.js'),
61
}),
62
test({
63
code: 'var foo = require("./")',
64
filename: testFilePath('./no-self-import.js'),
65
}),
66
test({
67
code: 'var foo = require("@scope/foo")',
68
filename: testFilePath('./no-self-import.js'),
69
}),
70
test({
71
code: 'var bar = require("./bar/index")',
72
filename: testFilePath('./no-self-import.js'),
73
}),
74
test({
75
code: 'var bar = require("./bar")',
76
filename: testFilePath('./bar/index.js'),
77
}),
78
test({
79
code: 'var bar = require("./bar")',
80
filename: '<text>',
81
}),
82
],
83
invalid: [
84
test({
85
code: 'import bar from "./no-self-import"',
86
errors: [error],
87
filename: testFilePath('./no-self-import.js'),
88
}),
89
test({
90
code: 'var bar = require("./no-self-import")',
91
errors: [error],
92
filename: testFilePath('./no-self-import.js'),
93
}),
94
test({
95
code: 'var bar = require("./no-self-import.js")',
96
errors: [error],
97
filename: testFilePath('./no-self-import.js'),
98
}),
99
test({
100
code: 'var bar = require(".")',
101
errors: [error],
102
filename: testFilePath('./index.js'),
103
}),
104
test({
105
code: 'var bar = require("./")',
106
errors: [error],
107
filename: testFilePath('./index.js'),
108
}),
109
test({
110
code: 'var bar = require("././././")',
111
errors: [error],
112
filename: testFilePath('./index.js'),
113
}),
114
test({
115
code: 'var bar = require("../no-self-import-folder")',
116
errors: [error],
117
filename: testFilePath('./no-self-import-folder/index.js'),
118
}),
119
],
120
});
121
122