Skip to content

Commit 5782515

Browse files
authored
Merge pull request webpack#4305 from rrharvey/feature/multi-entry-cli
allow mutli-file entry via CLI
2 parents 479a0a4 + 14a9dee commit 5782515

File tree

16 files changed

+56
-1
lines changed

16 files changed

+56
-1
lines changed

bin/convert-argv.js

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,11 @@ module.exports = function(yargs, argv, convertOptions) {
275275
}
276276

277277
ifArgPair("entry", function(name, entry) {
278-
options.entry[name] = entry;
278+
if(typeof options.entry[name] !== "undefined" && options.entry[name] !== null) {
279+
options.entry[name] = [].concat(options.entry[name]).concat(entry);
280+
} else {
281+
options.entry[name] = entry;
282+
}
279283
}, function() {
280284
ensureObject(options, "entry");
281285
});
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = "fileA";
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = "index";
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
"use strict";
2+
3+
module.exports = function testAssertions(code, stdout, stderr) {
4+
code.should.be.exactly(0);
5+
6+
stdout.should.be.ok();
7+
stdout[4].should.containEql("null.js");
8+
stdout[5].should.match(/a\.js.*\{0\}/);
9+
stdout[6].should.match(/index\.js.*\{0\}/);
10+
stdout[7].should.match(/multi.*index\.js.*a\.js/); // should have multi-file entry
11+
stderr.should.be.empty();
12+
};
13+
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
--entry ./a.js
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = {};
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = "fileA";
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
module.exports = "index";
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
"use strict";
2+
3+
module.exports = function testAssertions(code, stdout, stderr) {
4+
code.should.be.exactly(0);
5+
6+
stdout.should.be.ok();
7+
stdout[4].should.containEql("null.js");
8+
stdout[5].should.containEql("foo.js"); // named entry from --entry foo=./a.js
9+
stdout[6].should.match(/a\.js.*\{1\}/);
10+
stdout[7].should.match(/index\.js.*\{0\}/);
11+
stderr.should.be.empty();
12+
};
13+
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
--entry foo=./a.js

0 commit comments

Comments
 (0)