Next.jsでVitestのin-source testingをするときはimport.meta.vitestに空文字列をセットすると動く
Vitestのin-source testngでは import.meta.vitest をfalsyにすることでビルド段階でソース中の if (import.meta.vitest) {} をまるごと削除してもらう
Vite では "import.meta.vitest": "undefined" で undefined に置換されて消えてくれる Next.js Compilerの define でこれをやると "undefined" すなわち文字列に置換されるのでtruthyになってifの中に突っ込んで死ぬ env とマージされているので文字列しか埋め込めないっぽい
"import.meta.vitest": "" とする
"" はfalsy
in-source testingは普通に罠が多いのでやらなくてよい