diff --git a/packages/cli/tests/config.test.js b/packages/cli/tests/config-formats.test.js similarity index 66% rename from packages/cli/tests/config.test.js rename to packages/cli/tests/config-formats.test.js index 89d16ca9c..a993ac4eb 100644 --- a/packages/cli/tests/config.test.js +++ b/packages/cli/tests/config-formats.test.js @@ -1,3 +1,5 @@ +const { join } = require('path'); +const { access } = require('fs').promises; const { build } = require('./lib/cli'); const { subject } = require('./lib/output'); @@ -17,15 +19,12 @@ describe('config files', () => { it(`should load the 'prerender-urls.json' file`, async () => { let dir = await subject('multiple-config-files'); - const logSpy = jest.spyOn(process.stdout, 'write'); - await build(dir); - expect(logSpy).not.toHaveBeenCalledWith( - expect.stringContaining( - 'Failed to load prerenderUrls file, using default!' - ) - ); + expect(await access(join(dir, 'build/index.html'))).toBeUndefined(); + expect( + await access(join(dir, 'build/custom/index.html')) + ).toBeUndefined(); }); formats.forEach(moduleFormat => { @@ -33,17 +32,14 @@ describe('config files', () => { it(`should load the '${dataFormat}' file in ${moduleFormat}`, async () => { let dir = await subject('multiple-config-files'); - const logSpy = jest.spyOn(process.stdout, 'write'); - await build(dir, { prerenderUrls: `prerenderUrls/${moduleFormat}/${dataFormat}`, }); - expect(logSpy).not.toHaveBeenCalledWith( - expect.stringContaining( - 'Failed to load prerenderUrls file, using default!' - ) - ); + expect(await access(join(dir, 'build/index.html'))).toBeUndefined(); + expect( + await access(join(dir, 'build/custom/index.html')) + ).toBeUndefined(); }); }); }); @@ -55,17 +51,11 @@ describe('config files', () => { it(`should load the '${dataFormat}' file in ${moduleFormat}`, async () => { let dir = await subject('multiple-config-files'); - const logSpy = jest.spyOn(process.stdout, 'write'); - await build(dir, { config: `preactConfig/${moduleFormat}/${dataFormat}`, }); - expect(logSpy).not.toHaveBeenCalledWith( - expect.stringContaining( - 'Failed to load preact-cli config file, using default!' - ) - ); + expect(await access(join(dir, 'build/bundle.js'))).toBeUndefined(); }); }); }); diff --git a/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/function.js b/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/function.js index ea41b01de..e85964678 100644 --- a/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/function.js +++ b/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/function.js @@ -1 +1,3 @@ -module.exports = function () {}; +module.exports = function (config) { + config.output.filename = '[name].js'; +}; diff --git a/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/object.js b/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/object.js index 631340227..f961f78c0 100644 --- a/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/object.js +++ b/packages/cli/tests/subjects/multiple-config-files/preactConfig/cjs/object.js @@ -1,3 +1,5 @@ module.exports = { - webpack() {}, + webpack(config) { + config.output.filename = '[name].js'; + }, }; diff --git a/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/function.js b/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/function.js index ea9b101e1..6971fb4e9 100644 --- a/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/function.js +++ b/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/function.js @@ -1 +1,3 @@ -export default function () {} +export default function (config) { + config.output.filename = '[name].js'; +} diff --git a/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/object.js b/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/object.js index 1a50d5c1e..682582494 100644 --- a/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/object.js +++ b/packages/cli/tests/subjects/multiple-config-files/preactConfig/esm/object.js @@ -1,3 +1,5 @@ export default { - webpack() {}, + webpack(config) { + config.output.filename = '[name].js'; + }, };