import path from 'node:path'
import { defineConfig } from 'vitest/config'
import packageJson from './package.json' with { type: 'json' }
export default defineConfig({
define: {
__MOTRIX_TARGET__: JSON.stringify('electron'),
__MOTRIX_PREVIEW_MAC_MENU__: JSON.stringify(false),
__MOTRIX_APP_METADATA__: JSON.stringify({
name: packageJson.productName,
version: packageJson.version,
author: packageJson.author,
license: packageJson.license,
}),
},
test: {
environment: 'node',
globals: true,
setupFiles: [],
exclude: ['e2e/**', 'node_modules/**', 'dist/**', 'dist-test/**'],
projects: [
{
test: {
name: 'node',
globalSetup: ['tests/setup/build-worker.ts'],
include: ['src/**/*.test.{ts,tsx}', 'tests/**/*.test.{ts,tsx}'],
exclude: ['src/{renderer,preload}/**'],
},
},
{
test: {
name: 'browser',
environment: 'jsdom',
include: ['src/{renderer,preload}/**/*.test.{ts,tsx}'],
},
},
],
},
resolve: {
alias: {
'@shared': path.resolve(import.meta.dirname, 'src/shared'),
'@core': path.resolve(import.meta.dirname, 'src/core'),
'@renderer': path.resolve(import.meta.dirname, 'src/renderer'),
'@server': path.resolve(import.meta.dirname, 'src/server'),
'@test-utils': path.resolve(import.meta.dirname, 'src/test-utils'),
},
},
})