diff --git a/packages/neutrino-preset-node/test/node_test.js b/packages/neutrino-preset-node/test/node_test.js index b7462c1..b4849b1 100644 --- a/packages/neutrino-preset-node/test/node_test.js +++ b/packages/neutrino-preset-node/test/node_test.js @@ -12,7 +12,8 @@ test('uses preset', t => { t.notThrows(() => api.use(require('..'))); }); -test('valid preset', t => { +test('valid preset production', t => { + process.env.NODE_ENV = 'production'; const api = Neutrino(); api.use(require('..')); @@ -21,3 +22,14 @@ test('valid preset', t => { t.is(errors.length, 0); }); + +test('valid preset development', t => { + process.env.NODE_ENV = 'development'; + const api = Neutrino(); + + api.use(require('..')); + + const errors = validate(api.config.toConfig()); + + t.is(errors.length, 0); +}); diff --git a/packages/neutrino-preset-react/test/react_test.js b/packages/neutrino-preset-react/test/react_test.js index b7462c1..b4849b1 100644 --- a/packages/neutrino-preset-react/test/react_test.js +++ b/packages/neutrino-preset-react/test/react_test.js @@ -12,7 +12,8 @@ test('uses preset', t => { t.notThrows(() => api.use(require('..'))); }); -test('valid preset', t => { +test('valid preset production', t => { + process.env.NODE_ENV = 'production'; const api = Neutrino(); api.use(require('..')); @@ -21,3 +22,14 @@ test('valid preset', t => { t.is(errors.length, 0); }); + +test('valid preset development', t => { + process.env.NODE_ENV = 'development'; + const api = Neutrino(); + + api.use(require('..')); + + const errors = validate(api.config.toConfig()); + + t.is(errors.length, 0); +}); diff --git a/packages/neutrino-preset-web/index.js b/packages/neutrino-preset-web/index.js index 5cba31c..90b1936 100644 --- a/packages/neutrino-preset-web/index.js +++ b/packages/neutrino-preset-web/index.js @@ -25,6 +25,7 @@ function devServer({ config }, options) { .contentBase(options.contentBase) .historyApiFallback(true) .hot(true) + .publicPath(config.output.get('publicPath')) .stats({ assets: false, children: false, diff --git a/packages/neutrino-preset-web/test/web_test.js b/packages/neutrino-preset-web/test/web_test.js index c0751d0..719656b 100644 --- a/packages/neutrino-preset-web/test/web_test.js +++ b/packages/neutrino-preset-web/test/web_test.js @@ -12,7 +12,8 @@ test('uses preset', t => { t.notThrows(() => api.use(require('..'))); }); -test('valid preset', t => { +test('valid preset production', t => { + process.env.NODE_ENV = 'production'; const api = Neutrino(); api.use(require('..')); @@ -21,3 +22,24 @@ test('valid preset', t => { t.is(errors.length, 0); }); + +test('valid preset development', t => { + process.env.NODE_ENV = 'development'; + const api = Neutrino(); + + api.use(require('..')); + + const errors = validate(api.config.toConfig()); + + t.is(errors.length, 0); +}); + +test('devServer publicPath', t => { + const api = Neutrino(); + + api.use(require('..')); + + const config = api.config.toConfig(); + + t.is(config.output.publicPath, config.devServer.publicPath); +}); diff --git a/packages/neutrino/package.json b/packages/neutrino/package.json index 4528792..b716426 100644 --- a/packages/neutrino/package.json +++ b/packages/neutrino/package.json @@ -34,7 +34,7 @@ "ramda": "^0.23.0", "ramda-fantasy": "^0.7.0", "webpack": "^2.3.1", - "webpack-chain": "^3.1.0", + "webpack-chain": "^3.2.0", "webpack-dev-server": "^2.4.2", "yargs": "^7.0.2" }, diff --git a/packages/neutrino/yarn.lock b/packages/neutrino/yarn.lock index 85bab8d..9b32c3b 100644 --- a/packages/neutrino/yarn.lock +++ b/packages/neutrino/yarn.lock @@ -2218,9 +2218,9 @@ wbuf@^1.1.0, wbuf@^1.4.0: dependencies: minimalistic-assert "^1.0.0" -webpack-chain@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/webpack-chain/-/webpack-chain-3.1.0.tgz#53e82857624d48794443238db99248e598550e03" +webpack-chain@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/webpack-chain/-/webpack-chain-3.2.0.tgz#110d88291d6157b8cad02be1689c4b1e53bce8f6" dependencies: deepmerge "^1.3.2"