/** * Playwright global setup:指向 mock 主站钱包、tick 期号调度。 */ import { request as pwRequest } from '@playwright/test'; export default async function globalSetup(): Promise { const api = process.env.PLAYWRIGHT_API_URL ?? 'http://127.0.0.1:8000'; const mockPort = process.env.E2E_MOCK_WALLET_PORT ?? '5555'; const ctx = await pwRequest.newContext({ baseURL: api }); const siteCode = process.env.E2E_PLAYER_SITE_CODE ?? 'demo'; const walletResp = await ctx.post('/api/v1/_e2e/site/wallet-api', { data: { site_code: siteCode, base_url: `http://127.0.0.1:${mockPort}`, wallet_api_key: 'e2e-mock-key', }, }); if (!walletResp.ok()) { const body = await walletResp.text().catch(() => ''); throw new Error(`e2e wallet-api setup failed: ${walletResp.status()} ${body.slice(0, 400)}`); } await ctx.post('/api/v1/_e2e/draw/tick', { data: {} }); await ctx.dispose(); }