From e1933c66bd2c7de9c02c59b0b3d96cdb8aeb1537 Mon Sep 17 00:00:00 2001 From: "Michael B. Gale" Date: Thu, 12 Feb 2026 23:22:33 +0000 Subject: [PATCH] Find all missing messages in `checkExpectedLogMessages` --- src/testing-utils.ts | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/src/testing-utils.ts b/src/testing-utils.ts index 12808a41f..d8dbabab3 100644 --- a/src/testing-utils.ts +++ b/src/testing-utils.ts @@ -249,14 +249,26 @@ export function checkExpectedLogMessages( messages: LoggedMessage[], expectedMessages: string[], ) { + const missingMessages: string[] = []; + for (const expectedMessage of expectedMessages) { - t.assert( - messages.some( + if ( + !messages.some( (msg) => typeof msg.message === "string" && msg.message.includes(expectedMessage), - ), - `Expected '${expectedMessage}' in the logger output, but didn't find it in:\n ${messages.map((m) => ` - '${m.message}'`).join("\n")}`, + ) + ) { + missingMessages.push(expectedMessage); + } + } + + if (missingMessages.length > 0) { + const listify = (lines: string[]) => + lines.map((m) => ` - '${m}'`).join("\n"); + + t.fail( + `Expected\n\n${listify(missingMessages)}\n\nin the logger output, but didn't find it in:\n\n${messages.map((m) => ` - '${m.message}'`).join("\n")}`, ); } }