@@ -1185,6 +1185,15 @@ ruleTester.run('order', rule, {
1185
1185
} ,
1186
1186
} ] ,
1187
1187
} ) ,
1188
+ test ( {
1189
+ code : `
1190
+ import { A as A, A as B, A as C } from "./Z";
1191
+ const { a, a: b, a: c } = require("./Z");
1192
+ ` ,
1193
+ options : [ {
1194
+ named : true ,
1195
+ } ] ,
1196
+ } ) ,
1188
1197
] ,
1189
1198
invalid : [
1190
1199
// builtin before external module (require)
@@ -2847,6 +2856,29 @@ ruleTester.run('order', rule, {
2847
2856
message : '`A` export should occur before export of `B`' ,
2848
2857
} ] ,
2849
2858
} ) ,
2859
+ test ( {
2860
+ code : `
2861
+ import { A as B, A as C, A } from "./Z";
2862
+ export { A, A as D, A as B, A as C } from "./Z";
2863
+ const { a: b, a: c, a } = require("./Z");
2864
+ ` ,
2865
+ output : `
2866
+ import { A, A as B, A as C } from "./Z";
2867
+ export { A, A as B, A as C, A as D } from "./Z";
2868
+ const { a, a: b, a: c } = require("./Z");
2869
+ ` ,
2870
+ options : [ {
2871
+ named : true ,
2872
+ alphabetize : { order : 'asc' } ,
2873
+ } ] ,
2874
+ errors : [ {
2875
+ message : '`A` import should occur before import of `A as B`' ,
2876
+ } , {
2877
+ message : '`A as D` export should occur after export of `A as C`' ,
2878
+ } , {
2879
+ message : '`a` import should occur before import of `a as b`' ,
2880
+ } ] ,
2881
+ } ) ,
2850
2882
// Alphabetize with require
2851
2883
...semver . satisfies ( eslintPkg . version , '< 3.0.0' ) ? [ ] : [
2852
2884
test ( {
0 commit comments