@@ -209,86 +209,3 @@ sentryTest('emits element timing spans on navigation', async ({ getLocalTestUrl,
209209 navigationStartTime ,
210210 ) ;
211211} ) ;
212-
213- // For element timing, we're fine with just always emitting a transaction,
214- // regardless of a parent span being present or not (as in this case)
215- sentryTest ( 'emits element timing spans if no parent span is active' , async ( { getLocalTestUrl, page, browserName } ) => {
216- if ( shouldSkipTracingTest ( ) || browserName === 'webkit' ) {
217- sentryTest . skip ( ) ;
218- }
219-
220- serveAssets ( page ) ;
221-
222- const pageloadEventPromise = waitForTransactionRequest ( page , evt => evt . contexts ?. trace ?. op === 'pageload' ) ;
223-
224- const elementTimingTransactionPromise1 = waitForTransactionRequest (
225- page ,
226- evt => evt . contexts ?. trace ?. op === 'ui.elementtiming' && evt . transaction === 'element[click-image]' ,
227- ) ;
228-
229- const elementTimingTransactionPromise2 = waitForTransactionRequest (
230- page ,
231- evt => evt . contexts ?. trace ?. op === 'ui.elementtiming' && evt . transaction === 'element[click-text]' ,
232- ) ;
233-
234- const url = await getLocalTestUrl ( { testDir : __dirname } ) ;
235-
236- await page . goto ( url ) ;
237-
238- await pageloadEventPromise ;
239-
240- await page . locator ( '#button2' ) . click ( ) ;
241-
242- const imageElementTimingTransaction = envelopeRequestParser ( await elementTimingTransactionPromise1 ) ;
243- const textElementTimingTransaction = envelopeRequestParser ( await elementTimingTransactionPromise2 ) ;
244-
245- expect ( imageElementTimingTransaction . spans ?. length ) . toEqual ( 0 ) ;
246- expect ( textElementTimingTransaction . spans ?. length ) . toEqual ( 0 ) ;
247-
248- const imageETattributes = imageElementTimingTransaction . contexts ?. trace ?. data ;
249- const textETattributes = textElementTimingTransaction . contexts ?. trace ?. data ;
250-
251- expect ( imageETattributes ) . toEqual ( {
252- 'element.identifier' : 'click-image' ,
253- 'element.paint-type' : 'image-paint' ,
254- 'element.load-time' : expect . any ( Number ) ,
255- 'element.render-time' : expect . any ( Number ) ,
256- 'element.size' : '600x179' ,
257- 'element.type' : 'img' ,
258- 'element.url' : 'https://sentry-test-site.example/path/to/image-click.png' ,
259- 'sentry.span-start-time-source' : 'load-time' ,
260- 'sentry.op' : 'ui.elementtiming' ,
261- 'sentry.origin' : 'auto.ui.browser.elementtiming' ,
262- 'sentry.source' : 'component' ,
263- route : '/index.html' ,
264- } ) ;
265-
266- expect ( textETattributes ) . toEqual ( {
267- 'element.identifier' : 'click-text' ,
268- 'element.load-time' : 0 ,
269- 'element.render-time' : expect . any ( Number ) ,
270- 'element.paint-type' : 'text-paint' ,
271- 'element.type' : 'p' ,
272- 'sentry.span-start-time-source' : 'render-time' ,
273- 'sentry.op' : 'ui.elementtiming' ,
274- 'sentry.origin' : 'auto.ui.browser.elementtiming' ,
275- 'sentry.source' : 'component' ,
276- route : '/index.html' ,
277- } ) ;
278- } ) ;
279-
280- function serveAssets ( page : Page ) {
281- page . route ( / i m a g e - ( f a s t | l a z y | n a v i g a t i o n | c l i c k ) \. p n g / , async ( route : Route ) => {
282- await new Promise ( resolve => setTimeout ( resolve , 100 ) ) ;
283- return route . fulfill ( {
284- path : `${ __dirname } /assets/sentry-logo-600x179.png` ,
285- } ) ;
286- } ) ;
287-
288- page . route ( '**/image-slow.png' , async ( route : Route ) => {
289- await new Promise ( resolve => setTimeout ( resolve , 1500 ) ) ;
290- return route . fulfill ( {
291- path : `${ __dirname } /assets/sentry-logo-600x179.png` ,
292- } ) ;
293- } ) ;
294- }
0 commit comments