I am migrating my project from Vue-CLI & Jest to Vite & Vitest. Everything worked fine until I tried to make my tests pass through Jenkins. I discovered that some snapshots does not match because of some assets paths.
src="file:///C:/src/..."
(which is weird because this path does not exist)src="file:///src/..."
These assets are imported in my .vue
files using return new URL("/src/...", import.meta.url).href
.
Of course everything works perfectly locally.
Do you have any idea why, and how I can fix it?
Thanks!
Edit: I found why. I was running my local tests on Windows, but the Jenkins ones on Linux. I solved it by using process.env.VITEST
env variable:
export function setDynamicUrl(media: string) {
return process.env.VITEST
? media
: new URL(`/src/assets/${media}`, import.meta.url).href;
}