11import { DEFAULT_REQUEST_ERROR_RESPONSE_LENGTH_LIMIT } from '@datadog/browser-logs/cjs/domain/configuration'
22import { test , expect } from '@playwright/test'
3- import { createTest , js } from '../lib/framework'
3+ import { createTest } from '../lib/framework'
44import { APPLICATION_ID } from '../lib/helpers/configuration'
55
66const UNREACHABLE_URL = 'http://localhost:9999/unreachable'
@@ -15,18 +15,14 @@ test.describe('logs', () => {
1515 createTest ( 'service worker with worker logs - esm' )
1616 . withLogs ( )
1717 . withWorker (
18- ( setup ) => js `
19- // Initialize DD_LOGS in service worker
20- ${ setup }
21-
22- // Handle messages from main thread
18+ function ( self ) {
2319 self . addEventListener ( 'message' , ( event ) => {
24- const message = event.data;
20+ const message = ( event as MessageEvent < string > ) . data
2521
26- DD_LOGS.logger.log(message);
27- });
28- ` ,
29- true
22+ self . DD_LOGS . logger . log ( message )
23+ } )
24+ } ,
25+ { type : 'module' }
3026 )
3127 . run ( async ( { flushEvents, intakeRegistry, browserName, interactWithWorker } ) => {
3228 test . skip ( browserName !== 'chromium' , 'Non-Chromium browsers do not support ES modules in Service Workers' )
@@ -43,19 +39,13 @@ test.describe('logs', () => {
4339
4440 createTest ( 'service worker with worker logs - importScripts' )
4541 . withLogs ( )
46- . withWorker (
47- ( setup ) => js `
48- // Initialize DD_LOGS in service worker
49- ${ setup }
50-
51- // Handle messages from main thread
52- self.addEventListener('message', (event) => {
53- const message = event.data;
42+ . withWorker ( function ( self ) {
43+ self . addEventListener ( 'message' , ( event ) => {
44+ const message = ( event as MessageEvent < string > ) . data
5445
55- DD_LOGS.logger.log(message);
56- });
57- `
58- )
46+ self . DD_LOGS . logger . log ( message )
47+ } )
48+ } )
5949 . run ( async ( { flushEvents, intakeRegistry, browserName, interactWithWorker } ) => {
6050 test . skip (
6151 browserName === 'webkit' ,
@@ -74,20 +64,23 @@ test.describe('logs', () => {
7464
7565 createTest ( 'service worker console forwarding' )
7666 . withLogs ( { forwardConsoleLogs : 'all' , forwardErrorsToLogs : true } )
77- . withWorker (
78- ( setup ) => js `
79- // Initialize DD_LOGS in service worker
80- ${ setup }
81-
82- console.log('SW console log test');
83- `
84- )
85- . run ( async ( { flushEvents, intakeRegistry, browserName } ) => {
67+ . withWorker ( function ( self ) {
68+ self . addEventListener ( 'message' , ( event ) => {
69+ const message = ( event as MessageEvent < string > ) . data
70+
71+ console . log ( message )
72+ } )
73+ } )
74+ . run ( async ( { flushEvents, intakeRegistry, interactWithWorker, browserName } ) => {
8675 test . skip (
8776 browserName === 'webkit' ,
8877 'BrowserStack overrides the localhost URL with bs-local.com and cannot be used to install a Service Worker'
8978 )
9079
80+ await interactWithWorker ( ( worker ) => {
81+ worker . postMessage ( 'SW console log test' )
82+ } )
83+
9184 await flushEvents ( )
9285
9386 // Expect logs for console, error, and report events from service worker
0 commit comments