Skip to content

Commit 622977e

Browse files
authored
fix(browser): more stable in-source testing validation (#8793)
1 parent 155521a commit 622977e

File tree

1 file changed

+19
-15
lines changed

1 file changed

+19
-15
lines changed

packages/browser/src/node/plugin.ts

Lines changed: 19 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -429,21 +429,25 @@ export default (parentServer: ParentBrowserProject, base = '/'): Plugin[] => {
429429
},
430430
{
431431
name: 'vitest:browser:in-source-tests',
432-
transform(code, id) {
433-
const filename = cleanUrl(id)
434-
const project = parentServer.vitest.getProjectByName(parentServer.config.name)
435-
436-
if (!project._isCachedTestFile(filename) || !code.includes('import.meta.vitest')) {
437-
return
438-
}
439-
const s = new MagicString(code, { filename })
440-
s.prepend(
441-
`Object.defineProperty(import.meta, 'vitest', { get() { return typeof __vitest_worker__ !== 'undefined' && __vitest_worker__.filepath === "${filename.replace(/"/g, '\\"')}" ? __vitest_index__ : undefined } });\n`,
442-
)
443-
return {
444-
code: s.toString(),
445-
map: s.generateMap({ hires: true }),
446-
}
432+
transform: {
433+
filter: {
434+
code: /import\.meta\.vitest/,
435+
},
436+
handler(code, id) {
437+
const filename = cleanUrl(id)
438+
439+
if (!code.includes('import.meta.vitest')) {
440+
return
441+
}
442+
const s = new MagicString(code, { filename })
443+
s.prepend(
444+
`Object.defineProperty(import.meta, 'vitest', { get() { return typeof __vitest_worker__ !== 'undefined' && __vitest_worker__.filepath === "${filename.replace(/"/g, '\\"')}" ? __vitest_index__ : undefined } });\n`,
445+
)
446+
return {
447+
code: s.toString(),
448+
map: s.generateMap({ hires: true }),
449+
}
450+
},
447451
},
448452
},
449453
{

0 commit comments

Comments
 (0)