Files
SkinbaseNova/tests/e2e/global-setup.ts
2026-03-28 19:15:39 +01:00

35 lines
795 B
TypeScript

import { execFileSync } from 'node:child_process'
import { existsSync } from 'node:fs'
import path from 'node:path'
const VITE_MANIFEST_PATH = path.join(process.cwd(), 'public', 'build', 'manifest.json')
function ensureCompiledAssets() {
if (existsSync(VITE_MANIFEST_PATH)) {
return
}
const npmCommand = process.platform === 'win32' ? 'npm.cmd' : 'npm'
execFileSync(npmCommand, ['run', 'build'], {
cwd: process.cwd(),
stdio: 'inherit',
})
}
function warmBladeViews() {
execFileSync('php', ['artisan', 'view:clear'], {
cwd: process.cwd(),
stdio: 'inherit',
})
execFileSync('php', ['artisan', 'view:cache'], {
cwd: process.cwd(),
stdio: 'inherit',
})
}
export default async function globalSetup() {
ensureCompiledAssets()
warmBladeViews()
}