Skip to content

Commit b03c6ed

Browse files
committed
fix test, fix #5
1 parent 2259a6b commit b03c6ed

File tree

7 files changed

+507
-494
lines changed

7 files changed

+507
-494
lines changed

.prettierignore

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
dist/
1+
/test/dist/
22
lib/
33
node_modules/
4-
README.md
4+
README.md
5+
*.html

package-lock.json

Lines changed: 490 additions & 485 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,18 +33,19 @@
3333
"devDependencies": {
3434
"@types/jest": "^26.0.14",
3535
"@types/mini-css-extract-plugin": "^0.9.1",
36-
"@types/node": "^14.11.2",
36+
"@types/node": "^14.11.5",
3737
"@types/webpack": "^4.41.22",
38-
"@typescript-eslint/parser": "^4.3.0",
38+
"@typescript-eslint/parser": "^4.4.0",
3939
"css-loader": "^4.3.0",
4040
"eslint": "^7.10.0",
4141
"file-loader": "^6.1.0",
4242
"html-webpack-plugin": "^4.5.0",
43-
"jest": "^26.4.2",
44-
"mini-css-extract-plugin": "^0.11.2",
43+
"jest": "^26.5.2",
44+
"mini-css-extract-plugin": "^0.12.0",
4545
"prettier": "^2.1.2",
4646
"ts-jest": "^26.4.1",
4747
"typescript": "^4.0.3",
48+
"url-loader": "^4.1.0",
4849
"webpack": "^4.44.2"
4950
}
5051
}

src/main.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,10 +98,12 @@ class HtmlWebpackInjectPreload implements Plugin {
9898
href = asset;
9999
}
100100

101+
href = href[0] === '/' ? href : '/' + href;
102+
101103
if (file.match.test(asset)) {
102104
const preload = {
103105
tagName: 'link',
104-
attributes: Object.assign({rel: 'preload', href}, file.attributes),
106+
attributes: Object.assign(file.attributes, {rel: 'preload', href}),
105107
voidTag: true,
106108
};
107109

test/expected.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<!doctype html><html><head><meta charset="utf-8"><title>Webpack App</title><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="preload" href="test-alt.css" as="style"><link rel="preload" href="Roboto-Regular.woff2" as="font" type="font/woff2" crossorigin><link href="main.css" rel="stylesheet"></head><body><script src="main.js"></script></body></html>
1+
<!doctype html><html><head><meta charset="utf-8"><title>Webpack App</title><meta name="viewport" content="width=device-width,initial-scale=1"><link as="style" href="/test-alt.css" rel="preload"><link as="font" type="font/woff2" crossorigin rel="preload" href="/Roboto-Regular.woff2"><link href="main.css" rel="stylesheet"></head><body><script src="main.js"></script></body></html>

test/index.test.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ describe('HTMLWebpackInjectPreload', () => {
6161
});
6262
compiler.run((err, stats) => {
6363
if (err) expect(err).toBeNull();
64+
expect(stats.compilation.errors.length).toBe(0);
6465

6566
const result = fs.readFileSync(
6667
path.join(__dirname, 'dist/index.html'),

test/setupTest.js

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
1-
jest.setTimeout(25000);
1+
jest.setTimeout(25000);
2+
const fs = require('fs');
3+
if (!fs.existsSync('./test/dist'))
4+
fs.mkdirSync('./test/dist');

0 commit comments

Comments
 (0)