From a380a785c296208af7017f547cd34cf72517f9da Mon Sep 17 00:00:00 2001 From: Nitin Kumar Date: Sun, 2 Aug 2020 11:18:01 +0530 Subject: [PATCH] fix: generated loader template (#1720) * fix: generated loader template * fix: generators test * refactor: Update test/loader/loader.test.js Co-authored-by: James George Co-authored-by: Anshuman Verma Co-authored-by: James George --- packages/generate-loader/templates/src/_index.js.tpl | 4 ++-- packages/generators/__tests__/loader-generator.test.ts | 2 +- test/loader/loader.test.js | 7 ++++++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/packages/generate-loader/templates/src/_index.js.tpl b/packages/generate-loader/templates/src/_index.js.tpl index cbea1368621..fa1972c5704 100644 --- a/packages/generate-loader/templates/src/_index.js.tpl +++ b/packages/generate-loader/templates/src/_index.js.tpl @@ -3,9 +3,9 @@ * https://webpack.js.org/contribute/writing-a-loader */ -export default function loader(source) { +module.exports = function loader(source) { const { loaders, resource, request, version, webpack } = this; - + console.log('<%= name %>'); const newSource = ` /** * <%= name %> diff --git a/packages/generators/__tests__/loader-generator.test.ts b/packages/generators/__tests__/loader-generator.test.ts index 6ee76b208c7..4b6d7f38605 100644 --- a/packages/generators/__tests__/loader-generator.test.ts +++ b/packages/generators/__tests__/loader-generator.test.ts @@ -28,7 +28,7 @@ describe('loader generator', () => { // Check the contents of the webpack config and loader file assert.fileContent([ [join(loaderDir, 'examples/simple/webpack.config.js'), /resolveLoader: {/], - [join(loaderDir, 'src/index.js'), /export default function loader\(source\) {/], + [join(loaderDir, 'src/index.js'), /module.exports = function loader\(source\) {/], [join(loaderDir, 'package.json'), new RegExp(loaderName)], ]); diff --git a/test/loader/loader.test.js b/test/loader/loader.test.js index d075c322f58..89a01479fc8 100644 --- a/test/loader/loader.test.js +++ b/test/loader/loader.test.js @@ -28,7 +28,7 @@ describe('loader command', () => { }); it('should scaffold loader template with a given name', async () => { - const { stdout } = await runPromptWithAnswers(__dirname, ['loader'], [`${loaderName}${ENTER}`]); + let { stdout } = await runPromptWithAnswers(__dirname, ['loader'], [`${loaderName}${ENTER}`]); expect(stdout).toContain(firstPrompt); @@ -46,5 +46,10 @@ describe('loader command', () => { files.forEach((file) => { expect(existsSync(join(__dirname, `${loaderName}/${file}`))).toBeTruthy(); }); + + //check if the the generated plugin works successfully + const path = resolve(__dirname, './test-loader/examples/simple/'); + ({ stdout } = run(path, [], false)); + expect(stdout).toContain('test-loader'); }); });