diff --git a/packages/cli-kit/src/public/node/node-package-manager.test.ts b/packages/cli-kit/src/public/node/node-package-manager.test.ts index c47933d0f13..2e5221a75a9 100644 --- a/packages/cli-kit/src/public/node/node-package-manager.test.ts +++ b/packages/cli-kit/src/public/node/node-package-manager.test.ts @@ -1156,6 +1156,30 @@ describe('addNPMDependencies', () => { }) }) + test('writes a space-separated install message to stdout', async () => { + await inTemporaryDirectory(async (tmpDir) => { + // Given + const stdout = {write: vi.fn()} + + // When + await addNPMDependencies( + [ + {name: 'first', version: '0.0.1'}, + {name: 'second', version: '0.0.2'}, + ], + { + type: 'prod', + packageManager: 'npm', + directory: tmpDir, + stdout: stdout as any, + }, + ) + + // Then + expect(stdout.write).toHaveBeenCalledWith('Installing first@0.0.1 second@0.0.2 with npm') + }) + }) + test('when the package manager is unknown an error is thrown', async () => { await inTemporaryDirectory(async (tmpDir) => { // Given diff --git a/packages/cli-kit/src/public/node/node-package-manager.ts b/packages/cli-kit/src/public/node/node-package-manager.ts index 7d0899500a6..c2335b46d9d 100644 --- a/packages/cli-kit/src/public/node/node-package-manager.ts +++ b/packages/cli-kit/src/public/node/node-package-manager.ts @@ -544,7 +544,7 @@ export async function addNPMDependencies( const dependenciesWithVersion = dependencies.map((dep) => { return dep.version ? `${dep.name}@${dep.version}` : dep.name }) - options.stdout?.write(`Installing ${[dependenciesWithVersion].join(' ')} with ${options.packageManager}`) + options.stdout?.write(`Installing ${dependenciesWithVersion.join(' ')} with ${options.packageManager}`) switch (options.packageManager) { case 'npm': // npm isn't too smart when resolving the dependency tree. For example, admin ui extensions include react as