webpack/benchmark/createFixtures.js

55 lines
1.9 KiB
JavaScript
Raw Normal View History

2015-04-04 08:32:04 +08:00
var path = require("path");
var fs = require("fs");
var fixtures = path.join(__dirname, "fixtures");
2015-07-16 06:27:37 +08:00
try {
fs.mkdirSync(fixtures);
} catch(e) {}
2015-04-04 08:32:04 +08:00
for(var i = 0; i < 1000; i++) {
var source = [];
if(i > 8)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 8 | 0) + ".js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 4)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 4 | 0) + ".js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 2)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 2 | 0) + ".js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 0)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i - 1) + ".js") + ");");
2015-04-04 08:32:04 +08:00
source.push("module.exports = " + i + ";");
fs.writeFileSync(path.join(fixtures, i + ".js"), source.join("\n"), "utf-8");
}
for(var i = 0; i < 1000; i++) {
var source = [];
source.push("require.ensure([], function(require) {");
if(i > 8)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 8 | 0) + ".async.js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 4)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 4 | 0) + ".async.js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 2)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 2 | 0) + ".async.js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 0)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i - 1) + ".async.js") + ");");
2015-04-04 08:32:04 +08:00
source.push("});");
source.push("module.exports = " + i + ";");
fs.writeFileSync(path.join(fixtures, i + ".async.js"), source.join("\n"), "utf-8");
}
for(var i = 0; i < 100; i++) {
var source = [];
if(i > 8)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 8 | 0) + ".big.js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 4)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 4 | 0) + ".big.js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 2)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i / 2 | 0) + ".big.js") + ");");
2015-04-04 08:32:04 +08:00
if(i > 0)
2015-07-16 06:27:37 +08:00
source.push("require(" + JSON.stringify("./" + (i - 1) + ".big.js") + ");");
2015-04-04 08:32:04 +08:00
for(var j = 0; j < 300; j++)
source.push("if(Math.random())hello.world();test.a.b.c.d();x(1,2,3,4);var a,b,c,d,e,f;");
source.push("module.exports = " + i + ";");
fs.writeFileSync(path.join(fixtures, i + ".big.js"), source.join("\n"), "utf-8");
}