Skip to content

Commit 97e2f4c

Browse files
ShanaMaidevilebottnawi
authored andcommitted
test: loading order (#236)
* fix css files load order mismatch #188 * fix(src): fix sort bug * feat(test): add test * test(sorting): add test case which uses the fallback behavior * fix(sorting): revert change to restore original behavior This fixes the testcase
1 parent 30b89d0 commit 97e2f4c

26 files changed

+110
-0
lines changed
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: red; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import './c.css';
2+
import './d.css';
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import './e.css';
2+
import './f.css';
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: green; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: blue; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: yellow; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: purple; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
body { background: blue; }
2+
3+
body { background: yellow; }
4+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
body { background: purple; }
2+
3+
body { background: indigo; }
4+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
body { background: red; }
2+
3+
body { background: green; }
4+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: indigo; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import './a.css';
2+
import './b.css';
3+
import(/* webpackChunkName: 'async-one' */'./async-one');
4+
import(/* webpackChunkName: 'async-two' */'./async-two');
5+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
const Self = require('../../../');
2+
3+
module.exports = {
4+
entry: {
5+
'main': './index.js',
6+
},
7+
module: {
8+
rules: [
9+
{
10+
test: /\.css$/,
11+
use: [
12+
Self.loader,
13+
'css-loader',
14+
],
15+
},
16+
],
17+
},
18+
plugins: [
19+
function() {
20+
this.hooks.compilation.tap("Test", compilation => {
21+
compilation.hooks.beforeChunkAssets.tap("Test", () => {
22+
for (const chunkGroup of compilation.chunkGroups) {
23+
// remove getModuleIndex2 to enforce using fallback
24+
chunkGroup.getModuleIndex2 = undefined;
25+
}
26+
});
27+
})
28+
},
29+
new Self({
30+
filename: '[name].css',
31+
}),
32+
],
33+
};
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: red; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import './c.css';
2+
import './d.css';
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
import './e.css';
2+
import './f.css';
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: green; }
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: blue; }
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: yellow; }
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: purple; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
body { background: blue; }
2+
3+
body { background: yellow; }
4+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
body { background: purple; }
2+
3+
body { background: indigo; }
4+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
body { background: red; }
2+
3+
body { background: green; }
4+
+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
body { background: indigo; }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
import './a.css';
2+
import './b.css';
3+
import(/* webpackChunkName: 'async-one' */'./async-one');
4+
import(/* webpackChunkName: 'async-two' */'./async-two');
5+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
const Self = require('../../../');
2+
3+
module.exports = {
4+
entry: {
5+
'main': './index.js',
6+
},
7+
module: {
8+
rules: [
9+
{
10+
test: /\.css$/,
11+
use: [
12+
Self.loader,
13+
'css-loader',
14+
],
15+
},
16+
],
17+
},
18+
plugins: [
19+
new Self({
20+
filename: '[name].css',
21+
}),
22+
],
23+
};

0 commit comments

Comments
 (0)