diff --git a/__e2e__/init.test.ts b/__e2e__/init.test.ts index 5da0b3d59c..9e07e89439 100644 --- a/__e2e__/init.test.ts +++ b/__e2e__/init.test.ts @@ -64,11 +64,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 e94e85e144..4313342528 100644 --- a/packages/cli/src/commands/init/init.ts +++ b/packages/cli/src/commands/init/init.ts @@ -93,16 +93,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',