From c68fce4d250ae9d99d567e33c542586f7cc8ed8c Mon Sep 17 00:00:00 2001 From: Ivan Demchuk Date: Tue, 1 Feb 2022 11:08:22 +0200 Subject: [PATCH] fix: add a fallback if error fails to serialize (#660) --- packages/vitest/src/runtime/error.ts | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/packages/vitest/src/runtime/error.ts b/packages/vitest/src/runtime/error.ts index a768348c6480..b530a21df236 100644 --- a/packages/vitest/src/runtime/error.ts +++ b/packages/vitest/src/runtime/error.ts @@ -62,5 +62,10 @@ export function processError(err: any) { if (typeof err.actual !== 'string') err.actual = stringify(err.actual) - return serializeError(err) + try { + return serializeError(err) + } + catch (e: any) { + return serializeError(new Error(`Failed to fully serialize error: ${e?.message}.\nInner error message: ${err?.message}`)) + } }