Skip to content

Commit

Permalink
[Tests] use settings: import/resolver everywhere except tests for t…
Browse files Browse the repository at this point in the history
…he legacy `import/resolve`
  • Loading branch information
ljharb committed Mar 13, 2020
1 parent efd6be1 commit 944aecd
Show file tree
Hide file tree
Showing 5 changed files with 27 additions and 19 deletions.
12 changes: 10 additions & 2 deletions tests/src/core/resolve.js
Original file line number Diff line number Diff line change
Expand Up @@ -139,14 +139,22 @@ describe('resolve', function () {
expect(testContextReports[0].loc).to.eql({ line: 1, column: 0 })
})

it('respects import/resolve extensions', function () {
it('respects (legacy) import/resolve extensions', function () {
const testContext = utils.testContext({ 'import/resolve': { 'extensions': ['.jsx'] }})

expect(resolve( './jsx/MyCoolComponent'
, testContext,
)).to.equal(utils.testFilePath('./jsx/MyCoolComponent.jsx'))
})

it('respects import/resolver extensions', function () {
const testContext = utils.testContext({ 'import/resolver': { 'extensions': ['.jsx'] }})

expect(resolve( './jsx/MyCoolComponent'
, testContext,
)).to.equal(utils.testFilePath('./jsx/MyCoolComponent.jsx'))
})

it('reports load exception in a user resolver', function () {
const testContext = utils.testContext({ 'import/resolver': './load-error-resolver' })
const testContextReports = []
Expand All @@ -165,7 +173,7 @@ describe('resolve', function () {
const caseDescribe = (!CASE_SENSITIVE_FS ? describe : describe.skip)
caseDescribe('case sensitivity', function () {
let file
const testContext = utils.testContext({ 'import/resolve': { 'extensions': ['.jsx'] }})
const testContext = utils.testContext({ 'import/resolver': { 'extensions': ['.jsx'] }})
before('resolve', function () {
file = resolve(
// Note the case difference 'MyUncoolComponent' vs 'MyUnCoolComponent'
Expand Down
20 changes: 10 additions & 10 deletions tests/src/rules/extensions.js
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ ruleTester.run('extensions', rule, {
'import data from "./bar.json"',
].join('\n'),
options: [ 'never' ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.jsx', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.jsx', '.json' ] } },
}),

test({
Expand All @@ -41,7 +41,7 @@ ruleTester.run('extensions', rule, {
'import barhbs from "./bar.hbs"',
].join('\n'),
options: [ 'always', { js: 'never', jsx: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.jsx', '.json', '.hbs' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.jsx', '.json', '.hbs' ] } },
}),

test({
Expand All @@ -50,7 +50,7 @@ ruleTester.run('extensions', rule, {
'import pack from "./package"',
].join('\n'),
options: [ 'never', { js: 'always', json: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.json' ] } },
}),

// unresolved (#271/#295)
Expand Down Expand Up @@ -174,7 +174,7 @@ ruleTester.run('extensions', rule, {
'import packageConfig from "./package"',
].join('\n'),
options: [ { json: 'always', js: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.json' ] } },
errors: [
{
message: 'Unexpected use of file extension "js" for "a/index.js"',
Expand All @@ -195,7 +195,7 @@ ruleTester.run('extensions', rule, {
'import data from "./bar.json"',
].join('\n'),
options: [ 'never' ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.jsx', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.jsx', '.json' ] } },
errors: [
{
message: 'Unexpected use of file extension "js" for "./bar.js"',
Expand All @@ -211,7 +211,7 @@ ruleTester.run('extensions', rule, {
'import data from "./bar.json"',
].join('\n'),
options: [ { json: 'always', js: 'never', jsx: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.jsx', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.jsx', '.json' ] } },
errors: [
{
message: 'Unexpected use of file extension "js" for "./bar.js"',
Expand All @@ -227,7 +227,7 @@ ruleTester.run('extensions', rule, {
'import data from "./bar.json"',
].join('\n'),
options: [ { json: 'always', js: 'never', jsx: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.jsx', '.json', '.js' ] } },
settings: { 'import/resolver': { 'extensions': [ '.jsx', '.json', '.js' ] } },
errors: [
{
message: 'Unexpected use of file extension "jsx" for "./bar.jsx"',
Expand All @@ -246,7 +246,7 @@ ruleTester.run('extensions', rule, {
},
],
options: ['never', { js: 'always', jsx: 'always' }],
settings: { 'import/resolve': { 'extensions': ['.coffee', '.js'] } },
settings: { 'import/resolver': { 'extensions': ['.coffee', '.js'] } },
}),

test({
Expand All @@ -256,7 +256,7 @@ ruleTester.run('extensions', rule, {
'import barnone from "./bar"',
].join('\n'),
options: [ 'always', { json: 'always', js: 'never', jsx: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.jsx', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.jsx', '.json' ] } },
errors: [
{
message: 'Unexpected use of file extension "js" for "./bar.js"',
Expand All @@ -273,7 +273,7 @@ ruleTester.run('extensions', rule, {
'import barnone from "./bar"',
].join('\n'),
options: [ 'never', { json: 'always', js: 'never', jsx: 'never' } ],
settings: { 'import/resolve': { 'extensions': [ '.js', '.jsx', '.json' ] } },
settings: { 'import/resolver': { 'extensions': [ '.js', '.jsx', '.json' ] } },
errors: [
{
message: 'Unexpected use of file extension "js" for "./bar.js"',
Expand Down
2 changes: 1 addition & 1 deletion tests/src/rules/named.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ ruleTester.run('named', rule, {
test({code: 'import {RuleTester} from "./re-export-node_modules"'}),

test({ code: 'import { jsxFoo } from "./jsx/AnotherComponent"'
, settings: { 'import/resolve': { 'extensions': ['.js', '.jsx'] } } }),
, settings: { 'import/resolver': { 'extensions': ['.js', '.jsx'] } } }),

// validate that eslint-disable-line silences this properly
test({code: 'import {a, b, d} from "./common"; ' +
Expand Down
6 changes: 3 additions & 3 deletions tests/src/rules/no-duplicates.js
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ ruleTester.run('no-duplicates', rule, {
test({
code: "import { x } from './bar'; import { y } from 'bar';",
output: "import { x , y } from './bar'; ",
settings: { 'import/resolve': {
settings: { 'import/resolver': {
paths: [path.join( process.cwd()
, 'tests', 'files',
)] }},
Expand Down Expand Up @@ -306,7 +306,7 @@ ruleTester.run('no-duplicates', rule, {
// Not autofix bail.
output: `
import {x,y} from './foo'
// some-tool-disable-next-line
`,
errors: ['\'./foo\' imported multiple times.', '\'./foo\' imported multiple times.'],
Expand All @@ -324,7 +324,7 @@ ruleTester.run('no-duplicates', rule, {
import {x,y} from './foo'
// comment
`,
errors: ['\'./foo\' imported multiple times.', '\'./foo\' imported multiple times.'],
}),
Expand Down
6 changes: 3 additions & 3 deletions tests/src/rules/no-unresolved.js
Original file line number Diff line number Diff line change
Expand Up @@ -243,7 +243,7 @@ ruleTester.run('no-unresolved (import/resolve legacy)', rule, {
test({
code: "import { DEEP } from 'in-alternate-root';",
settings: {
'import/resolve': {
'import/resolver': {
'paths': [path.join( process.cwd()
, 'tests', 'files', 'alternate-root')],
},
Expand All @@ -253,14 +253,14 @@ ruleTester.run('no-unresolved (import/resolve legacy)', rule, {
test({
code: "import { DEEP } from 'in-alternate-root'; " +
"import { bar } from 'src-bar';",
settings: {'import/resolve': { 'paths': [
settings: {'import/resolver': { 'paths': [
path.join('tests', 'files', 'src-root'),
path.join('tests', 'files', 'alternate-root'),
]}}}),

test({
code: 'import * as foo from "jsx-module/foo"',
settings: { 'import/resolve': { 'extensions': ['.jsx'] } },
settings: { 'import/resolver': { 'extensions': ['.jsx'] } },
}),
],

Expand Down

0 comments on commit 944aecd

Please sign in to comment.