diff --git a/packages/playwright-test/src/experimentalLoader.ts b/packages/playwright-test/src/experimentalLoader.ts index c9e8c416fa..67c18f0631 100644 --- a/packages/playwright-test/src/experimentalLoader.ts +++ b/packages/playwright-test/src/experimentalLoader.ts @@ -42,9 +42,6 @@ async function load(moduleUrl: string, context: { format?: string }, defaultLoad if (!moduleUrl.startsWith('file://')) return defaultLoad(moduleUrl, context, defaultLoad); - if (!moduleUrl.startsWith('file://')) - return defaultLoad(moduleUrl, context, defaultLoad); - const filename = url.fileURLToPath(moduleUrl); // Bail for node_modules. if (belongsToNodeModules(filename)) diff --git a/packages/playwright-test/src/transform.ts b/packages/playwright-test/src/transform.ts index 0d67f5c1d9..4d97b8cd14 100644 --- a/packages/playwright-test/src/transform.ts +++ b/packages/playwright-test/src/transform.ts @@ -245,12 +245,16 @@ export function wrapFunctionWithLocation(func: (location: Lo }; } +// This will catch the playwright-test package as well +const kPlaywrightInternalPrefix = path.resolve(__dirname, '../../playwright'); +const kPlaywrightCoveragePrefix = path.resolve(__dirname, '../../../tests/config/coverage.js'); + export function belongsToNodeModules(file: string) { if (file.includes(`${path.sep}node_modules${path.sep}`)) return true; - if (file.includes(`${path.sep}playwright${path.sep}packages${path.sep}playwright`)) + if (file.startsWith(kPlaywrightInternalPrefix)) return true; - if (file.includes(`${path.sep}playwright${path.sep}tests${path.sep}config${path.sep}coverage.js`)) + if (file.startsWith(kPlaywrightCoveragePrefix)) return true; return false; }