세션·로그인 제한, ZIP/업로드 스트리밍, CSP 최소 강제와 Report-Only, Playwright 격리 검증을 추가하고 미디어 목록을 reconcile 후 database 모드로 고정한다. Co-authored-by: Cursor <cursoragent@cursor.com>
38 lines
839 B
JavaScript
38 lines
839 B
JavaScript
import { spawnSync } from 'node:child_process'
|
|
import {
|
|
playwrightTestEnv,
|
|
setupPlaywrightTestEnvironment,
|
|
teardownPlaywrightTestEnvironment
|
|
} from './playwright-test-environment.js'
|
|
|
|
const project = process.argv[2]
|
|
|
|
if (!['api', 'e2e'].includes(project)) {
|
|
console.error('Playwright 프로젝트는 api 또는 e2e여야 합니다.')
|
|
process.exit(1)
|
|
}
|
|
|
|
let exitCode = 1
|
|
|
|
try {
|
|
setupPlaywrightTestEnvironment()
|
|
|
|
const result = spawnSync(
|
|
process.execPath,
|
|
['./node_modules/@playwright/test/cli.js', 'test', `--project=${project}`],
|
|
{
|
|
cwd: process.cwd(),
|
|
env: playwrightTestEnv,
|
|
stdio: 'inherit'
|
|
}
|
|
)
|
|
|
|
exitCode = result.status || 0
|
|
} catch (error) {
|
|
console.error(error instanceof Error ? error.message : error)
|
|
} finally {
|
|
teardownPlaywrightTestEnvironment()
|
|
}
|
|
|
|
process.exit(exitCode)
|