Skip to content

Commit

Permalink
[Fix] order: Fix alphabetize bug with newlines-between
Browse files Browse the repository at this point in the history
Fixes #1561.
  • Loading branch information
AamuLumi authored and ljharb committed Dec 9, 2019
1 parent 2d669b1 commit 614e55f
Show file tree
Hide file tree
Showing 2 changed files with 19 additions and 4 deletions.
8 changes: 4 additions & 4 deletions src/rules/order.js
Expand Up @@ -599,16 +599,16 @@ module.exports = {
registerNode(context, node, name, 'require', ranks, imported)
},
'Program:exit': function reportAndReset() {
if (newlinesBetweenImports !== 'ignore') {
makeNewlinesBetweenReport(context, imported, newlinesBetweenImports)
}

if (alphabetize.order !== 'ignore') {
mutateRanksToAlphabetize(imported, alphabetize.order)
}

makeOutOfOrderReport(context, imported)

if (newlinesBetweenImports !== 'ignore') {
makeNewlinesBetweenReport(context, imported, newlinesBetweenImports)
}

imported = []
},
FunctionDeclaration: incrementLevel,
Expand Down
15 changes: 15 additions & 0 deletions tests/src/rules/order.js
Expand Up @@ -560,6 +560,21 @@ ruleTester.run('order', rule, {
alphabetize: {order: 'desc'},
}],
}),
// Option alphabetize with newlines-between: {order: 'asc', newlines-between: 'always'}
test({
code: `
import b from 'Bar';
import c from 'bar';
import a from 'foo';
import index from './';
`,
options: [{
groups: ['external', 'index'],
alphabetize: {order: 'asc'},
'newlines-between': 'always',
}],
}),
],
invalid: [
// builtin before external module (require)
Expand Down

0 comments on commit 614e55f

Please sign in to comment.