Skip to content

Commit 77cacf7

Browse files
committed
test(javascript): Suppress StackParser to extract source code from files during tests
1 parent ad0fd34 commit 77cacf7

9 files changed

+39
-24
lines changed

packages/javascript/tests/catcher.addons.test.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import { BreadcrumbManager } from '../src/addons/breadcrumbs';
33
import { wait, createTransport, getLastPayload, createCatcher } from './catcher.helpers';
44

55
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
6-
vi.mock('../src/modules/stackParser', () => ({
7-
default: class { parse = mockParse; },
8-
}));
6+
vi.mock('@hawk.so/core', async (importOriginal) => {
7+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
8+
return { ...actual, StackParser: class { parse = mockParse; } };
9+
});
910

1011
describe('Catcher', () => {
1112
beforeEach(() => {

packages/javascript/tests/catcher.before-send.test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
import { describe, it, expect, vi } from 'vitest';
22
import { createCatcher, createTransport, wait, getLastPayload } from './catcher.helpers';
33

4+
vi.mock('@hawk.so/core', async (importOriginal) => {
5+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
6+
return { ...actual, StackParser: class { parse = vi.fn().mockResolvedValue([]); } };
7+
});
8+
49
describe('Catcher', () => {
510
it('should send event as-is when beforeSend returns it unchanged', async () => {
611
const { sendSpy, transport } = createTransport();

packages/javascript/tests/catcher.breadcrumbs.test.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import { BreadcrumbManager } from '../src/addons/breadcrumbs';
33
import { wait, createTransport, getLastPayload, createCatcher } from './catcher.helpers';
44

55
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
6-
vi.mock('../src/modules/stackParser', () => ({
7-
default: class { parse = mockParse; },
8-
}));
6+
vi.mock('@hawk.so/core', async (importOriginal) => {
7+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
8+
return { ...actual, StackParser: class { parse = mockParse; } };
9+
});
910

1011
describe('Catcher', () => {
1112
beforeEach(() => {

packages/javascript/tests/catcher.context.test.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import { BreadcrumbManager } from '../src/addons/breadcrumbs';
33
import { wait, createTransport, getLastPayload, createCatcher } from './catcher.helpers';
44

55
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
6-
vi.mock('../src/modules/stackParser', () => ({
7-
default: class { parse = mockParse; },
8-
}));
6+
vi.mock('@hawk.so/core', async (importOriginal) => {
7+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
8+
return { ...actual, StackParser: class { parse = mockParse; } };
9+
});
910

1011
describe('Catcher', () => {
1112
beforeEach(() => {

packages/javascript/tests/catcher.global-handlers.test.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@ import { BreadcrumbManager } from '../src/addons/breadcrumbs';
44
import { TEST_TOKEN, wait, createTransport, getLastPayload } from './catcher.helpers';
55

66
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
7-
vi.mock('../src/modules/stackParser', () => ({
8-
default: class { parse = mockParse; },
9-
}));
7+
vi.mock('@hawk.so/core', async (importOriginal) => {
8+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
9+
return { ...actual, StackParser: class { parse = mockParse; } };
10+
});
1011

1112
describe('Catcher', () => {
1213
beforeEach(() => {

packages/javascript/tests/catcher.release.test.ts

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
1-
import { describe, expect, it } from "vitest";
1+
import { describe, expect, it, vi } from "vitest";
22
import { createCatcher, createTransport, getLastPayload, wait } from "./catcher.helpers";
33

4+
vi.mock('@hawk.so/core', async (importOriginal) => {
5+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
6+
return { ...actual, StackParser: class { parse = vi.fn().mockResolvedValue([]); } };
7+
});
8+
49
describe('Catcher', () => {
510
it('should include release version when configured', async () => {
611
const { sendSpy, transport } = createTransport();

packages/javascript/tests/catcher.test.ts

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,10 @@ import { TEST_TOKEN, wait, createTransport, getLastPayload, createCatcher } from
55

66
// StackParser is mocked to prevent real network calls to source files in the jsdom environment.
77
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
8-
vi.mock('../src/modules/stackParser', () => ({
9-
default: class {
10-
parse = mockParse;
11-
},
12-
}));
8+
vi.mock('@hawk.so/core', async (importOriginal) => {
9+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
10+
return { ...actual, StackParser: class { parse = mockParse; } };
11+
});
1312

1413
// ─── Tests ───────────────────────────────────────────────────────────────────
1514

packages/javascript/tests/catcher.transport.test.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,10 @@ import type { Transport } from '../src';
44
import { wait, createCatcher, createTransport } from './catcher.helpers';
55

66
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
7-
vi.mock('../src/modules/stackParser', () => ({
8-
default: class { parse = mockParse; },
9-
}));
7+
vi.mock('@hawk.so/core', async (importOriginal) => {
8+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
9+
return { ...actual, StackParser: class { parse = mockParse; } };
10+
});
1011

1112
describe('Catcher', () => {
1213
beforeEach(() => {

packages/javascript/tests/catcher.user.test.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,10 @@ import { BreadcrumbManager } from '../src/addons/breadcrumbs';
33
import { wait, createTransport, getLastPayload, createCatcher } from './catcher.helpers';
44

55
const mockParse = vi.hoisted(() => vi.fn().mockResolvedValue([]));
6-
vi.mock('../src/modules/stackParser', () => ({
7-
default: class { parse = mockParse; },
8-
}));
6+
vi.mock('@hawk.so/core', async (importOriginal) => {
7+
const actual = await importOriginal<typeof import('@hawk.so/core')>();
8+
return { ...actual, StackParser: class { parse = mockParse; } };
9+
});
910

1011
describe('Catcher', () => {
1112
beforeEach(() => {

0 commit comments

Comments
 (0)