Skip to content

Commit a3146c9

Browse files
author
Luca Forstner
authored
Merge branch 'develop' into lforst-otel-for-nextjs
2 parents 18fe54d + 993acd4 commit a3146c9

File tree

2 files changed

+41
-26
lines changed

2 files changed

+41
-26
lines changed

.github/workflows/build.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,7 @@ jobs:
100100
- 'packages/rollup-utils/**'
101101
- 'packages/utils/**'
102102
- 'packages/types/**'
103+
- 'dev-packages/test-utils/**'
103104
browser: &browser
104105
- *shared
105106
- 'packages/browser/**'

dev-packages/test-utils/src/event-proxy-server.ts

Lines changed: 40 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,7 @@ export async function startProxyServer(
138138
eventCallbackListeners.add(callbackListener);
139139

140140
eventBuffer.forEach(bufferedEvent => {
141-
if (bufferedEvent.timestamp > listenerTimestamp) {
141+
if (bufferedEvent.timestamp >= listenerTimestamp) {
142142
callbackListener(bufferedEvent.data);
143143
}
144144
});
@@ -284,6 +284,7 @@ export async function waitForRequest(
284284
proxyServerName: string,
285285
timestamp: number,
286286
callback: (eventData: SentryRequestCallbackData) => Promise<boolean> | boolean,
287+
timestamp: number = Date.now(),
287288
): Promise<SentryRequestCallbackData> {
288289
const eventCallbackServerPort = await retrieveCallbackServerPort(proxyServerName);
289290

@@ -340,18 +341,23 @@ export function waitForEnvelopeItem(
340341
proxyServerName: string,
341342
timestamp: number,
342343
callback: (envelopeItem: EnvelopeItem) => Promise<boolean> | boolean,
344+
timestamp: number = Date.now(),
343345
): Promise<EnvelopeItem> {
344346
return new Promise((resolve, reject) => {
345-
waitForRequest(proxyServerName, timestamp, async eventData => {
346-
const envelopeItems = eventData.envelope[1];
347-
for (const envelopeItem of envelopeItems) {
348-
if (await callback(envelopeItem)) {
349-
resolve(envelopeItem);
350-
return true;
347+
waitForRequest(
348+
proxyServerName,
349+
async eventData => {
350+
const envelopeItems = eventData.envelope[1];
351+
for (const envelopeItem of envelopeItems) {
352+
if (await callback(envelopeItem)) {
353+
resolve(envelopeItem);
354+
return true;
355+
}
351356
}
352-
}
353-
return false;
354-
}).catch(reject);
357+
return false;
358+
},
359+
timestamp,
360+
).catch(reject);
355361
});
356362
}
357363

@@ -362,14 +368,18 @@ export function waitForError(
362368
): Promise<Event> {
363369
const timestamp = Date.now();
364370
return new Promise((resolve, reject) => {
365-
waitForEnvelopeItem(proxyServerName, timestamp, async envelopeItem => {
366-
const [envelopeItemHeader, envelopeItemBody] = envelopeItem;
367-
if (envelopeItemHeader.type === 'event' && (await callback(envelopeItemBody as Event))) {
368-
resolve(envelopeItemBody as Event);
369-
return true;
370-
}
371-
return false;
372-
}).catch(reject);
371+
waitForEnvelopeItem(
372+
proxyServerName,
373+
async envelopeItem => {
374+
const [envelopeItemHeader, envelopeItemBody] = envelopeItem;
375+
if (envelopeItemHeader.type === 'event' && (await callback(envelopeItemBody as Event))) {
376+
resolve(envelopeItemBody as Event);
377+
return true;
378+
}
379+
return false;
380+
},
381+
timestamp,
382+
).catch(reject);
373383
});
374384
}
375385

@@ -380,14 +390,18 @@ export function waitForTransaction(
380390
): Promise<Event> {
381391
const timestamp = Date.now();
382392
return new Promise((resolve, reject) => {
383-
waitForEnvelopeItem(proxyServerName, timestamp, async envelopeItem => {
384-
const [envelopeItemHeader, envelopeItemBody] = envelopeItem;
385-
if (envelopeItemHeader.type === 'transaction' && (await callback(envelopeItemBody as Event))) {
386-
resolve(envelopeItemBody as Event);
387-
return true;
388-
}
389-
return false;
390-
}).catch(reject);
393+
waitForEnvelopeItem(
394+
proxyServerName,
395+
async envelopeItem => {
396+
const [envelopeItemHeader, envelopeItemBody] = envelopeItem;
397+
if (envelopeItemHeader.type === 'transaction' && (await callback(envelopeItemBody as Event))) {
398+
resolve(envelopeItemBody as Event);
399+
return true;
400+
}
401+
return false;
402+
},
403+
timestamp,
404+
).catch(reject);
391405
});
392406
}
393407

0 commit comments

Comments
 (0)