webpack/test/configCases/hash-length/output-filename/webpack.config.js

233 lines
4.9 KiB
JavaScript
Raw Normal View History

var webpack = require("../../../../");
2018-01-19 16:21:00 +08:00
module.exports = [
{
name: "hash with length in publicPath",
output: {
2018-12-28 21:09:35 +08:00
publicPath: "/[fullhash:6]/",
filename: "bundle0.[fullhash:6].js",
chunkFilename: "[id].bundle0.[fullhash:6].js"
2018-01-19 16:21:00 +08:00
},
amd: {
expectedFilenameLength: 17,
expectedChunkFilenameLength: 19
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "hash in publicPath",
output: {
2018-12-28 21:09:35 +08:00
publicPath: "/[fullhash]/",
filename: "bundle1.[fullhash].js",
chunkFilename: "[id].bundle1.[fullhash].js"
2018-01-19 16:21:00 +08:00
},
amd: {
expectedFilenameLength: 31,
expectedChunkFilenameLength: 33
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "chunkhash with length",
output: {
filename: "bundle2.[chunkhash:8].js",
chunkFilename: "[id].bundle2.[chunkhash:8].js"
},
amd: {
expectedFilenameLength: 19,
expectedChunkFilenameLength: 21
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "chunkhash",
output: {
filename: "bundle3.[chunkhash].js",
chunkFilename: "[id].bundle3.[chunkhash].js"
},
amd: {
expectedFilenameLength: 31,
expectedChunkFilenameLength: 33
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "hash with and without length",
output: {
2018-12-28 21:09:35 +08:00
filename: "bundle4.[fullhash].js",
chunkFilename: "[id].bundle4.[fullhash:8].js"
2018-01-19 16:21:00 +08:00
},
amd: {
expectedFilenameLength: 31,
expectedChunkFilenameLength: 21
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "hash with length",
output: {
2018-12-28 21:09:35 +08:00
filename: "bundle5.[fullhash:6].js",
chunkFilename: "[id].bundle5.[fullhash:8].js"
2018-01-19 16:21:00 +08:00
},
amd: {
expectedFilenameLength: 17,
expectedChunkFilenameLength: 21
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "chunkhash in chunkFilename ",
output: {
2018-12-28 21:09:35 +08:00
filename: "bundle6.[fullhash].js",
2018-01-19 16:21:00 +08:00
chunkFilename: "[id].bundle6.[chunkhash:7].js"
},
amd: {
expectedFilenameLength: 31,
expectedChunkFilenameLength: 20
},
2018-02-25 09:00:20 +08:00
plugins: [new webpack.HotModuleReplacementPlugin()]
},
{
2018-01-19 16:21:00 +08:00
name: "hash with length and chunkhash with length",
output: {
2018-12-28 21:09:35 +08:00
filename: "bundle7.[fullhash:7].js",
2018-01-19 16:21:00 +08:00
chunkFilename: "[id].bundle7.[chunkhash:7].js"
},
target: "node",
amd: {
expectedFilenameLength: 18,
expectedChunkFilenameLength: 20
}
2018-02-25 09:00:20 +08:00
},
{
2018-01-19 16:21:00 +08:00
name: "hash with length in chunkFilename",
output: {
2018-12-28 21:09:35 +08:00
filename: "bundle8.[fullhash].js",
chunkFilename: "[id].bundle8.[fullhash:7].js"
2018-01-19 16:21:00 +08:00
},
target: "node",
amd: {
expectedFilenameLength: 31,
expectedChunkFilenameLength: 20
}
},
2018-01-19 16:21:00 +08:00
{
name: "chunkhash with length in chunkFilename",
output: {
2018-12-28 21:09:35 +08:00
filename: "bundle9.[fullhash].js",
2018-01-19 16:21:00 +08:00
chunkFilename: "[id].bundle9.[chunkhash:7].js"
},
target: "node",
amd: {
expectedFilenameLength: 31,
expectedChunkFilenameLength: 20
}
2018-03-23 02:52:11 +08:00
},
{
name: "contenthash in node",
output: {
filename: "bundle10.[contenthash].js",
chunkFilename: "[id].bundle10.[contenthash].js"
},
target: "node",
amd: {
expectedFilenameLength: 32,
expectedChunkFilenameLength: 34
}
},
{
name: "contenthash in node with length",
output: {
filename: "bundle11.[contenthash:7].js",
chunkFilename: "[id].bundle11.[contenthash:7].js"
},
target: "node",
amd: {
expectedFilenameLength: 9 + 7 + 3,
expectedChunkFilenameLength: 2 + 9 + 7 + 3
}
},
{
name: "contenthash in async-node",
output: {
filename: "bundle12.[contenthash].js",
chunkFilename: "[id].bundle12.[contenthash].js"
},
target: "async-node",
amd: {
expectedFilenameLength: 32,
expectedChunkFilenameLength: 34
}
},
{
name: "contenthash in async-node with length",
output: {
filename: "bundle13.[contenthash:7].js",
chunkFilename: "[id].bundle13.[contenthash:7].js"
},
target: "async-node",
amd: {
expectedFilenameLength: 9 + 7 + 3,
expectedChunkFilenameLength: 2 + 9 + 7 + 3
}
},
{
name: "contenthash in webpack",
entry: "./no-async",
output: {
filename: "bundle14.[contenthash].js",
chunkFilename: "[id].bundle14.[contenthash].js",
2018-11-29 22:45:08 +08:00
globalObject: "window"
},
target: "web",
amd: {
expectedFilenameLength: 32,
expectedChunkFilenameLength: 34
}
},
{
name: "contenthash in async-node with length",
entry: "./no-async",
output: {
filename: "bundle15.[contenthash:7].js",
chunkFilename: "[id].bundle15.[contenthash:7].js",
2018-11-29 22:45:08 +08:00
globalObject: "window"
},
target: "web",
amd: {
expectedFilenameLength: 9 + 7 + 3,
expectedChunkFilenameLength: 2 + 9 + 7 + 3
}
2018-03-25 16:15:01 +08:00
},
{
name: "contenthash in webpack",
entry: "./no-async",
output: {
filename: "bundle16.[contenthash].js",
chunkFilename: "[id].bundle16.[contenthash].js",
2018-11-29 22:45:08 +08:00
globalObject: "self"
2018-03-25 16:15:01 +08:00
},
target: "webworker",
amd: {
expectedFilenameLength: 32,
expectedChunkFilenameLength: 34
}
},
{
name: "contenthash in async-node with length",
entry: "./no-async",
output: {
filename: "bundle17.[contenthash:7].js",
chunkFilename: "[id].bundle17.[contenthash:7].js",
2018-11-29 22:45:08 +08:00
globalObject: "self"
2018-03-25 16:15:01 +08:00
},
target: "webworker",
amd: {
expectedFilenameLength: 9 + 7 + 3,
expectedChunkFilenameLength: 2 + 9 + 7 + 3
}
}
];
2020-03-29 06:10:15 +08:00
module.exports.forEach(function (options) {
options.plugins = options.plugins || [];
2018-02-25 09:00:20 +08:00
options.plugins.push(
new webpack.DefinePlugin({
NAME: JSON.stringify(options.name)
})
);
});