@@ -3,9 +3,9 @@ import { expect } from '@playwright/test';
33import { sentryTest } from '../../../../../utils/fixtures' ;
44import { envelopeRequestParser , waitForErrorRequest } from '../../../../../utils/helpers' ;
55import {
6- getCustomRecordingEvents ,
6+ collectReplayRequests ,
7+ getReplayPerformanceSpans ,
78 shouldSkipReplayTest ,
8- waitForReplayRequest ,
99} from '../../../../../utils/replayHelpers' ;
1010
1111sentryTest ( 'captures response size from Content-Length header if available' , async ( { getLocalTestPath, page } ) => {
@@ -35,7 +35,10 @@ sentryTest('captures response size from Content-Length header if available', asy
3535 } ) ;
3636
3737 const requestPromise = waitForErrorRequest ( page ) ;
38- const replayRequestPromise1 = waitForReplayRequest ( page , 0 ) ;
38+
39+ const replayRequestPromise = collectReplayRequests ( page , recordingEvents => {
40+ return getReplayPerformanceSpans ( recordingEvents ) . some ( span => span . op === 'resource.fetch' ) ;
41+ } ) ;
3942
4043 const url = await getLocalTestPath ( { testDir : __dirname } ) ;
4144 await page . goto ( url ) ;
@@ -67,9 +70,8 @@ sentryTest('captures response size from Content-Length header if available', asy
6770 } ,
6871 } ) ;
6972
70- const replayReq1 = await replayRequestPromise1 ;
71- const { performanceSpans : performanceSpans1 } = getCustomRecordingEvents ( replayReq1 ) ;
72- expect ( performanceSpans1 . filter ( span => span . op === 'resource.fetch' ) ) . toEqual ( [
73+ const { replayRecordingSnapshots } = await replayRequestPromise ;
74+ expect ( getReplayPerformanceSpans ( replayRecordingSnapshots ) . filter ( span => span . op === 'resource.fetch' ) ) . toEqual ( [
7375 {
7476 data : {
7577 method : 'GET' ,
@@ -123,7 +125,10 @@ sentryTest('captures response size without Content-Length header', async ({ getL
123125 } ) ;
124126
125127 const requestPromise = waitForErrorRequest ( page ) ;
126- const replayRequestPromise1 = waitForReplayRequest ( page , 0 ) ;
128+
129+ const replayRequestPromise = collectReplayRequests ( page , recordingEvents => {
130+ return getReplayPerformanceSpans ( recordingEvents ) . some ( span => span . op === 'resource.fetch' ) ;
131+ } ) ;
127132
128133 const url = await getLocalTestPath ( { testDir : __dirname } ) ;
129134 await page . goto ( url ) ;
@@ -155,9 +160,8 @@ sentryTest('captures response size without Content-Length header', async ({ getL
155160 } ,
156161 } ) ;
157162
158- const replayReq1 = await replayRequestPromise1 ;
159- const { performanceSpans : performanceSpans1 } = getCustomRecordingEvents ( replayReq1 ) ;
160- expect ( performanceSpans1 . filter ( span => span . op === 'resource.fetch' ) ) . toEqual ( [
163+ const { replayRecordingSnapshots } = await replayRequestPromise ;
164+ expect ( getReplayPerformanceSpans ( replayRecordingSnapshots ) . filter ( span => span . op === 'resource.fetch' ) ) . toEqual ( [
161165 {
162166 data : {
163167 method : 'GET' ,
@@ -208,7 +212,10 @@ sentryTest('captures response size from non-text response body', async ({ getLoc
208212 } ) ;
209213
210214 const requestPromise = waitForErrorRequest ( page ) ;
211- const replayRequestPromise1 = waitForReplayRequest ( page , 0 ) ;
215+
216+ const replayRequestPromise = collectReplayRequests ( page , recordingEvents => {
217+ return getReplayPerformanceSpans ( recordingEvents ) . some ( span => span . op === 'resource.fetch' ) ;
218+ } ) ;
212219
213220 const url = await getLocalTestPath ( { testDir : __dirname } ) ;
214221 await page . goto ( url ) ;
@@ -241,9 +248,8 @@ sentryTest('captures response size from non-text response body', async ({ getLoc
241248 } ,
242249 } ) ;
243250
244- const replayReq1 = await replayRequestPromise1 ;
245- const { performanceSpans : performanceSpans1 } = getCustomRecordingEvents ( replayReq1 ) ;
246- expect ( performanceSpans1 . filter ( span => span . op === 'resource.fetch' ) ) . toEqual ( [
251+ const { replayRecordingSnapshots } = await replayRequestPromise ;
252+ expect ( getReplayPerformanceSpans ( replayRecordingSnapshots ) . filter ( span => span . op === 'resource.fetch' ) ) . toEqual ( [
247253 {
248254 data : {
249255 method : 'POST' ,
0 commit comments