diff --git a/__e2e__/init.test.ts b/__e2e__/init.test.ts index 63c7769ea7..1c5390f0d5 100644 --- a/__e2e__/init.test.ts +++ b/__e2e__/init.test.ts @@ -66,11 +66,16 @@ test('init should ask and print files in directory if exist', () => { const {stdout, stderr} = runCLI(DIR, ['init', PROJECT_NAME]); + console.log({ + stdout, + stderr, + }); + + expect(stdout).toContain(`Do you want to replace existing files?`); expect(stderr).toContain( `warn The directory ${PROJECT_NAME} contains files that will be overwritten:`, ); - expect(stdout).toContain(`package.json`); - expect(stdout).toContain(`Do you want to replace existing files?`); + expect(stderr).toContain(`package.json`); }); test('init should prompt for the project name', () => { diff --git a/packages/cli/src/commands/init/init.ts b/packages/cli/src/commands/init/init.ts index 475bc85408..5d3ac8fe5d 100644 --- a/packages/cli/src/commands/init/init.ts +++ b/packages/cli/src/commands/init/init.ts @@ -126,16 +126,16 @@ async function setProjectDirectory( const conflicts = getConflictsForDirectory(directory); if (conflicts.length > 0) { - logger.warn( - `The directory ${chalk.bold( - directory, - )} contains files that will be overwritten:`, - ); + let warnMessage = `The directory ${chalk.bold( + directory, + )} contains files that will be overwritten:\n`; for (const conflict of conflicts) { - logger.log(` ${conflict}`); + warnMessage += ` ${conflict}\n`; } + logger.warn(warnMessage); + const {replace} = await prompt({ type: 'confirm', name: 'replace',