@@ -14,8 +14,6 @@ vi.mock('@sentry/core', async importActual => {
1414 debug : {
1515 log : vi . fn ( ) ,
1616 } ,
17- mergeMetadataMap : vi . fn ( ) ,
18- getFilenameToMetadataMap : vi . fn ( ) ,
1917 } ;
2018} ) ;
2119
@@ -213,10 +211,10 @@ describe('webWorkerIntegration', () => {
213211 } ) ;
214212
215213 it ( 'processes module metadata from worker' , ( ) => {
216- const mockMergeMetadataMap = SentryCore . mergeMetadataMap as any ;
214+ ( helpers . WINDOW as any ) . _sentryModuleMetadata = undefined ;
217215 const moduleMetadata = {
218- 'worker-file1.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
219- 'worker-file2.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
216+ 'Error\n at worker-file1.js:1:1 ' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
217+ 'Error\n at worker-file2.js:2:2 ' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
220218 } ;
221219
222220 mockEvent . data = {
@@ -228,13 +226,13 @@ describe('webWorkerIntegration', () => {
228226
229227 expect ( mockEvent . stopImmediatePropagation ) . toHaveBeenCalled ( ) ;
230228 expect ( mockDebugLog ) . toHaveBeenCalledWith ( 'Sentry module metadata web worker message received' , mockEvent . data ) ;
231- expect ( mockMergeMetadataMap ) . toHaveBeenCalledWith ( moduleMetadata ) ;
229+ expect ( ( helpers . WINDOW as any ) . _sentryModuleMetadata ) . toEqual ( moduleMetadata ) ;
232230 } ) ;
233231
234232 it ( 'handles message with both debug IDs and module metadata' , ( ) => {
235- const mockMergeMetadataMap = SentryCore . mergeMetadataMap as any ;
233+ ( helpers . WINDOW as any ) . _sentryModuleMetadata = undefined ;
236234 const moduleMetadata = {
237- 'worker-file.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
235+ 'Error\n at worker-file.js:1:1 ' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
238236 } ;
239237
240238 mockEvent . data = {
@@ -246,16 +244,16 @@ describe('webWorkerIntegration', () => {
246244 messageHandler ( mockEvent ) ;
247245
248246 expect ( mockEvent . stopImmediatePropagation ) . toHaveBeenCalled ( ) ;
249- expect ( mockMergeMetadataMap ) . toHaveBeenCalledWith ( moduleMetadata ) ;
247+ expect ( ( helpers . WINDOW as any ) . _sentryModuleMetadata ) . toEqual ( moduleMetadata ) ;
250248 expect ( ( helpers . WINDOW as any ) . _sentryDebugIds ) . toEqual ( {
251249 'worker-file.js' : 'debug-id-1' ,
252250 } ) ;
253251 } ) ;
254252
255253 it ( 'accepts message with only module metadata' , ( ) => {
256- const mockMergeMetadataMap = SentryCore . mergeMetadataMap as any ;
254+ ( helpers . WINDOW as any ) . _sentryModuleMetadata = undefined ;
257255 const moduleMetadata = {
258- 'worker-file.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
256+ 'Error\n at worker-file.js:1:1 ' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
259257 } ;
260258
261259 mockEvent . data = {
@@ -266,7 +264,7 @@ describe('webWorkerIntegration', () => {
266264 messageHandler ( mockEvent ) ;
267265
268266 expect ( mockEvent . stopImmediatePropagation ) . toHaveBeenCalled ( ) ;
269- expect ( mockMergeMetadataMap ) . toHaveBeenCalledWith ( moduleMetadata ) ;
267+ expect ( ( helpers . WINDOW as any ) . _sentryModuleMetadata ) . toEqual ( moduleMetadata ) ;
270268 } ) ;
271269
272270 it ( 'ignores invalid module metadata' , ( ) => {
@@ -343,38 +341,28 @@ describe('registerWebWorker', () => {
343341 } ) ;
344342 } ) ;
345343
346- it ( 'calls getFilenameToMetadataMap when module metadata is available' , ( ) => {
347- const mockGetFilenameToMetadataMap = SentryCore . getFilenameToMetadataMap as any ;
348- const extractedMetadata = {
349- 'worker-file1.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
350- 'worker-file2.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
351- } ;
352-
353- mockWorkerSelf . _sentryModuleMetadata = {
344+ it ( 'includes raw module metadata when available' , ( ) => {
345+ const rawMetadata = {
354346 'Error\n at worker-file1.js:1:1' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
355347 'Error\n at worker-file2.js:1:1' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
356348 } ;
357349
358- mockGetFilenameToMetadataMap . mockReturnValue ( extractedMetadata ) ;
350+ mockWorkerSelf . _sentryModuleMetadata = rawMetadata ;
359351
360352 registerWebWorker ( { self : mockWorkerSelf as any } ) ;
361353
362- expect ( mockGetFilenameToMetadataMap ) . toHaveBeenCalledWith ( expect . any ( Function ) ) ;
363354 expect ( mockWorkerSelf . postMessage ) . toHaveBeenCalledWith ( {
364355 _sentryMessage : true ,
365356 _sentryDebugIds : undefined ,
366- _sentryModuleMetadata : extractedMetadata ,
357+ _sentryModuleMetadata : rawMetadata ,
367358 } ) ;
368359 } ) ;
369360
370- it ( 'does not call getFilenameToMetadataMap when module metadata is not available' , ( ) => {
371- const mockGetFilenameToMetadataMap = SentryCore . getFilenameToMetadataMap as any ;
372-
361+ it ( 'sends undefined module metadata when not available' , ( ) => {
373362 mockWorkerSelf . _sentryModuleMetadata = undefined ;
374363
375364 registerWebWorker ( { self : mockWorkerSelf as any } ) ;
376365
377- expect ( mockGetFilenameToMetadataMap ) . not . toHaveBeenCalled ( ) ;
378366 expect ( mockWorkerSelf . postMessage ) . toHaveBeenCalledWith ( {
379367 _sentryMessage : true ,
380368 _sentryDebugIds : undefined ,
@@ -383,19 +371,14 @@ describe('registerWebWorker', () => {
383371 } ) ;
384372
385373 it ( 'includes both debug IDs and module metadata when both available' , ( ) => {
386- const mockGetFilenameToMetadataMap = SentryCore . getFilenameToMetadataMap as any ;
387- const extractedMetadata = {
388- 'worker-file.js' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
374+ const rawMetadata = {
375+ 'Error\n at worker-file.js:1:1' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
389376 } ;
390377
391378 mockWorkerSelf . _sentryDebugIds = {
392379 'worker-file.js' : 'debug-id-1' ,
393380 } ;
394- mockWorkerSelf . _sentryModuleMetadata = {
395- 'Error\n at worker-file.js:1:1' : { '_sentryBundlerPluginAppKey:my-app' : true } ,
396- } ;
397-
398- mockGetFilenameToMetadataMap . mockReturnValue ( extractedMetadata ) ;
381+ mockWorkerSelf . _sentryModuleMetadata = rawMetadata ;
399382
400383 registerWebWorker ( { self : mockWorkerSelf as any } ) ;
401384
@@ -404,7 +387,7 @@ describe('registerWebWorker', () => {
404387 _sentryDebugIds : {
405388 'worker-file.js' : 'debug-id-1' ,
406389 } ,
407- _sentryModuleMetadata : extractedMetadata ,
390+ _sentryModuleMetadata : rawMetadata ,
408391 } ) ;
409392 } ) ;
410393} ) ;
0 commit comments