From 3d6fe2c53a57376af53b5f10067fa2946b9d01f6 Mon Sep 17 00:00:00 2001 From: "Michael \"Z\" Goddard" Date: Fri, 23 Jun 2017 12:54:03 -0400 Subject: [PATCH] Test watching modules included in a ConcatenatedModule ModuleConcatenationPlugin creates a ConcatenatedModule from harmony modules. It must be rebuilt when those modules change. --- .../plugins/module-concatenation-plugin/0/bar/a.js | 1 + .../module-concatenation-plugin/0/bar/abc.js | 5 +++++ .../plugins/module-concatenation-plugin/0/bar/b.js | 1 + .../plugins/module-concatenation-plugin/0/bar/c.js | 1 + .../plugins/module-concatenation-plugin/0/foo/0.js | 1 + .../plugins/module-concatenation-plugin/0/index.js | 13 +++++++++++++ .../plugins/module-concatenation-plugin/1/bar/b.js | 1 + .../plugins/module-concatenation-plugin/1/foo/1.js | 1 + .../plugins/module-concatenation-plugin/2/bar/c.js | 1 + .../plugins/module-concatenation-plugin/2/foo/2.js | 1 + .../module-concatenation-plugin/webpack.config.js | 6 ++++++ 11 files changed, 32 insertions(+) create mode 100644 test/watchCases/plugins/module-concatenation-plugin/0/bar/a.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/0/bar/abc.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/0/bar/b.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/0/bar/c.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/0/foo/0.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/0/index.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/1/bar/b.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/1/foo/1.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/2/bar/c.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/2/foo/2.js create mode 100644 test/watchCases/plugins/module-concatenation-plugin/webpack.config.js diff --git a/test/watchCases/plugins/module-concatenation-plugin/0/bar/a.js b/test/watchCases/plugins/module-concatenation-plugin/0/bar/a.js new file mode 100644 index 00000000000..7b24d0e60f6 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/0/bar/a.js @@ -0,0 +1 @@ +export default 'This '; diff --git a/test/watchCases/plugins/module-concatenation-plugin/0/bar/abc.js b/test/watchCases/plugins/module-concatenation-plugin/0/bar/abc.js new file mode 100644 index 00000000000..68c28812908 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/0/bar/abc.js @@ -0,0 +1,5 @@ +import a from './a'; +import b from './b'; +import c from './c'; + +export default a + b + c; diff --git a/test/watchCases/plugins/module-concatenation-plugin/0/bar/b.js b/test/watchCases/plugins/module-concatenation-plugin/0/bar/b.js new file mode 100644 index 00000000000..ec06d241325 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/0/bar/b.js @@ -0,0 +1 @@ +export default 'is only'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/0/bar/c.js b/test/watchCases/plugins/module-concatenation-plugin/0/bar/c.js new file mode 100644 index 00000000000..c2d90b70b5d --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/0/bar/c.js @@ -0,0 +1 @@ +export default ' a test'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/0/foo/0.js b/test/watchCases/plugins/module-concatenation-plugin/0/foo/0.js new file mode 100644 index 00000000000..9bad2b79018 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/0/foo/0.js @@ -0,0 +1 @@ +module.exports = require('../bar/abc').default + '.0'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/0/index.js b/test/watchCases/plugins/module-concatenation-plugin/0/index.js new file mode 100644 index 00000000000..0f584966674 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/0/index.js @@ -0,0 +1,13 @@ +it("should watch for changes", function() { + if(WATCH_STEP === '0') { + require("./foo/" + WATCH_STEP).should.be.eql('This is only a test.' + WATCH_STEP); + } + else if(WATCH_STEP === '1') { + require("./foo/" + WATCH_STEP).should.be.eql('This should be a test.' + WATCH_STEP); + } + else if(WATCH_STEP === '2') { + require("./foo/" + WATCH_STEP).should.be.eql('This should be working.' + WATCH_STEP); + } + + STATS_JSON.modules.length.should.equal(4 + Number(WATCH_STEP)); +}); diff --git a/test/watchCases/plugins/module-concatenation-plugin/1/bar/b.js b/test/watchCases/plugins/module-concatenation-plugin/1/bar/b.js new file mode 100644 index 00000000000..2cd0cdc25f9 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/1/bar/b.js @@ -0,0 +1 @@ +export default 'should be'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/1/foo/1.js b/test/watchCases/plugins/module-concatenation-plugin/1/foo/1.js new file mode 100644 index 00000000000..f1bd20c78e7 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/1/foo/1.js @@ -0,0 +1 @@ +module.exports = require('../bar/abc').default + '.1'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/2/bar/c.js b/test/watchCases/plugins/module-concatenation-plugin/2/bar/c.js new file mode 100644 index 00000000000..6d4f2c1ce49 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/2/bar/c.js @@ -0,0 +1 @@ +export default ' working'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/2/foo/2.js b/test/watchCases/plugins/module-concatenation-plugin/2/foo/2.js new file mode 100644 index 00000000000..749e96f8f3a --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/2/foo/2.js @@ -0,0 +1 @@ +module.exports = require('../bar/abc').default + '.2'; diff --git a/test/watchCases/plugins/module-concatenation-plugin/webpack.config.js b/test/watchCases/plugins/module-concatenation-plugin/webpack.config.js new file mode 100644 index 00000000000..062821a9bb4 --- /dev/null +++ b/test/watchCases/plugins/module-concatenation-plugin/webpack.config.js @@ -0,0 +1,6 @@ +var webpack = require("../../../../"); +module.exports = { + plugins: [ + new webpack.optimize.ModuleConcatenationPlugin() + ] +};