Files
n8n-enterprise-unlocked/packages/testing/containers/n8n-test-container-utils.ts
2025-07-10 11:50:03 +01:00

27 lines
679 B
TypeScript

import type { Readable } from 'stream';
/**
* Create a log consumer that does not log to the console
* @returns A tuple containing the log consumer and a function to throw an error with logs
*/
export function createSilentLogConsumer() {
const logs: string[] = [];
const consumer = (stream: Readable) => {
stream.on('data', (chunk: Buffer | string) => {
logs.push(chunk.toString().trim());
});
};
const throwWithLogs = (error: unknown): never => {
if (logs.length > 0) {
console.error('\n--- Container Logs ---');
console.error(logs.join('\n'));
console.error('---------------------\n');
}
throw error;
};
return { consumer, throwWithLogs };
}