27 lines
716 B
JavaScript
27 lines
716 B
JavaScript
import { spawnSync } from 'node:child_process'
|
|
import { fileURLToPath } from 'node:url'
|
|
import { dirname, join } from 'node:path'
|
|
|
|
const here = dirname(fileURLToPath(import.meta.url))
|
|
const root = join(here, '..')
|
|
process.env.TSX_TSCONFIG_PATH = join(root, 'tsconfig.test.json')
|
|
|
|
const files = [
|
|
'session-sync.test.ts',
|
|
'catalog-api.test.ts',
|
|
'mutation-queue.test.ts',
|
|
'gold-guess-rewards.test.ts',
|
|
]
|
|
let failed = false
|
|
|
|
for (const file of files) {
|
|
const result = spawnSync(
|
|
process.execPath,
|
|
['--import', 'tsx', '--test', '--test-reporter=spec', join(here, file)],
|
|
{ cwd: root, stdio: 'inherit', env: process.env },
|
|
)
|
|
if (result.status !== 0) failed = true
|
|
}
|
|
|
|
process.exit(failed ? 1 : 0)
|