Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
epidemian
GitHub Repository: epidemian/eslint-plugin-import
Path: blob/main/tests/src/rules/no-named-as-default.js
829 views
1
import { test, SYNTAX_CASES } from '../utils';
2
import { RuleTester } from 'eslint';
3
4
const ruleTester = new RuleTester();
5
const rule = require('rules/no-named-as-default');
6
7
ruleTester.run('no-named-as-default', rule, {
8
valid: [
9
test({ code: 'import "./malformed.js"' }),
10
11
test({ code: 'import bar, { foo } from "./bar";' }),
12
test({ code: 'import bar, { foo } from "./empty-folder";' }),
13
14
// es7
15
test({ code: 'export bar, { foo } from "./bar";',
16
parser: require.resolve('babel-eslint') }),
17
test({ code: 'export bar from "./bar";',
18
parser: require.resolve('babel-eslint') }),
19
20
// #566: don't false-positive on `default` itself
21
test({ code: 'export default from "./bar";',
22
parser: require.resolve('babel-eslint') }),
23
24
...SYNTAX_CASES,
25
],
26
27
invalid: [
28
test({
29
code: 'import foo from "./bar";',
30
errors: [ {
31
message: 'Using exported name \'foo\' as identifier for default export.',
32
type: 'ImportDefaultSpecifier' } ] }),
33
test({
34
code: 'import foo, { foo as bar } from "./bar";',
35
errors: [ {
36
message: 'Using exported name \'foo\' as identifier for default export.',
37
type: 'ImportDefaultSpecifier' } ] }),
38
39
// es7
40
test({
41
code: 'export foo from "./bar";',
42
parser: require.resolve('babel-eslint'),
43
errors: [ {
44
message: 'Using exported name \'foo\' as identifier for default export.',
45
type: 'ExportDefaultSpecifier' } ] }),
46
test({
47
code: 'export foo, { foo as bar } from "./bar";',
48
parser: require.resolve('babel-eslint'),
49
errors: [ {
50
message: 'Using exported name \'foo\' as identifier for default export.',
51
type: 'ExportDefaultSpecifier' } ] }),
52
53
test({
54
code: 'import foo from "./malformed.js"',
55
errors: [{
56
message: "Parse errors in imported module './malformed.js': 'return' outside of function (1:1)",
57
type: 'Literal',
58
}],
59
}),
60
],
61
});
62
63