Skip to content

Commit 18ba344

Browse files
andrew0mydea
andauthored
fix(core): Capture only failed console.assert calls (#11799)
I'm seeing a lot of breadcrumbs for `console.assert`s even though they are passing. This issue was previously fixed in #2239 but I guess there was a regression at some point. There was already an existing test case for this, but it was missing an assertion. --------- Co-authored-by: Francesco Novy <francesconovy@gmail.com>
1 parent 40da10b commit 18ba344

File tree

2 files changed

+8
-4
lines changed

2 files changed

+8
-4
lines changed

packages/core/src/integrations/captureconsole.ts

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -63,10 +63,12 @@ function consoleHandler(args: unknown[], level: string): void {
6363
return event;
6464
});
6565

66-
if (level === 'assert' && args[0] === false) {
67-
const message = `Assertion failed: ${safeJoin(args.slice(1), ' ') || 'console.assert'}`;
68-
scope.setExtra('arguments', args.slice(1));
69-
captureMessage(message, captureContext);
66+
if (level === 'assert') {
67+
if (!args[0]) {
68+
const message = `Assertion failed: ${safeJoin(args.slice(1), ' ') || 'console.assert'}`;
69+
scope.setExtra('arguments', args.slice(1));
70+
captureMessage(message, captureContext);
71+
}
7072
return;
7173
}
7274

packages/core/test/lib/integrations/captureconsole.test.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -175,6 +175,8 @@ describe('CaptureConsole setup', () => {
175175
captureConsole.setup?.(mockClient);
176176

177177
GLOBAL_OBJ.console.assert(1 + 1 === 2);
178+
179+
expect(captureMessage).toHaveBeenCalledTimes(0);
178180
});
179181

180182
it('should capture exception when console logs an error object with level set to "error"', () => {

0 commit comments

Comments
 (0)