diff --git a/packages/vitest/src/node/logger.ts b/packages/vitest/src/node/logger.ts index e576210de3f4..d16f6440f455 100644 --- a/packages/vitest/src/node/logger.ts +++ b/packages/vitest/src/node/logger.ts @@ -8,6 +8,12 @@ import { RandomSequencer } from './sequencers/RandomSequencer' import type { Vitest } from './core' import { printError } from './error' +// https://www.real-world-systems.com/docs/ANSIcode.html +const ESC = '\x1B[' +const ERASE_SCREEN = `${ESC}2J` +const ERASE_SCROLLBACK = `${ESC}3J` +const CURSOR_HOME_ROW = `${ESC}H` + export class Logger { outputStream = process.stdout errorStream = process.stderr @@ -43,7 +49,8 @@ export class Logger { return } - this.console.log(`\x1Bc${message}`) + this.console.log(`${ERASE_SCREEN}${ERASE_SCROLLBACK}${CURSOR_HOME_ROW}`) + this.console.log(message) } clearScreen(message: string, force = false) {