From 5daeaf8e8f183af6e9dc11bc5f39315e28ce46ce Mon Sep 17 00:00:00 2001 From: Chau Tran Date: Fri, 3 Jun 2022 23:05:38 -0500 Subject: [PATCH] fix(js): return empty array if no helper dependencies found (#10582) * fix(js): return empty array if no helper dependencies found * chore(js): add test for generate package json with helper dependency --- e2e/node/src/node.test.ts | 25 ++++++++++++++++++- .../src/utils/compiler-helper-dependency.ts | 2 +- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/e2e/node/src/node.test.ts b/e2e/node/src/node.test.ts index 2c9df3679373d..e5e30904d38c4 100644 --- a/e2e/node/src/node.test.ts +++ b/e2e/node/src/node.test.ts @@ -260,7 +260,7 @@ describe('Build Node apps', () => { beforeEach(() => newProject()); it('should generate a package.json with the `--generatePackageJson` flag', async () => { - newProject(); + const scope = newProject(); const nestapp = uniq('nestapp'); runCLI(`generate @nrwl/nest:app ${nestapp} --linter=eslint`); @@ -284,6 +284,29 @@ describe('Build Node apps', () => { version: '0.0.1', }) ); + + const nodeapp = uniq('nodeapp'); + runCLI(`generate @nrwl/node:app ${nodeapp}`); + + const jslib = uniq('jslib'); + runCLI(`generate @nrwl/js:lib ${jslib} --buildable`); + + updateFile( + `apps/${nodeapp}/src/main.ts`, + ` +import { ${jslib} } from '@${scope}/${jslib}'; +console.log('Hello World!'); +${jslib}(); +` + ); + + await runCLIAsync(`build ${nodeapp} --generate-package-json`); + checkFilesExist(`dist/apps/${nestapp}/package.json`); + const nodeAppPackageJson = JSON.parse( + readFile(`dist/apps/${nodeapp}/package.json`) + ); + + expect(nodeAppPackageJson['dependencies']['tslib']).toBeTruthy(); }, 300000); describe('NestJS', () => { diff --git a/packages/js/src/utils/compiler-helper-dependency.ts b/packages/js/src/utils/compiler-helper-dependency.ts index 2b1dfdf606ce7..3c418ce5dbc96 100644 --- a/packages/js/src/utils/compiler-helper-dependency.ts +++ b/packages/js/src/utils/compiler-helper-dependency.ts @@ -103,7 +103,7 @@ export function getHelperDependenciesFromProjectGraph( !projectGraph.dependencies[sourceProject] || !projectGraph.dependencies[sourceProject].length ) - return; + return []; const sourceDependencies = projectGraph.dependencies[sourceProject]; const internalDependencies = sourceDependencies.reduce(