const { test, expect } = require('@playwright/test'); const { loginAs, BASE_URL } = require('../../helpers/auth'); const { assertApiSuccess, assertApiError, authHeaders } = require('../../helpers/utils'); test.describe('【家长】心愿管理', () => { var auth; test.beforeAll(async ({ browser }) => { auth = await loginAs(browser, 'parent'); }); test('[场景1] 查看孩子心愿列表 — 期望返回心愿数据', async ({ page }) => { var resp = await page.request.post(BASE_URL + '/api/wishes/list', { headers: authHeaders(auth), data: { childUserId: 1003 } }); var data = await assertApiSuccess(resp); expect(data).toBeDefined(); }); test('[场景2] 审批通过心愿兑换 — 期望返回成功', async ({ page }) => { var resp = await page.request.post(BASE_URL + '/api/wishes/approve', { headers: authHeaders(auth), data: { wishId: 1, action: 'approve' } }); var data = await assertApiSuccess(resp); expect(data).toBeDefined(); }); test('[场景3] 拒绝心愿 — 期望返回成功', async ({ page }) => { var resp = await page.request.post(BASE_URL + '/api/wishes/reject', { headers: authHeaders(auth), data: { wishId: 1, reason: '不符合兑换条件' } }); var data = await assertApiSuccess(resp); expect(data).toBeDefined(); }); test('[场景4] 查看心愿详情 — 期望返回心愿详细信息', async ({ page }) => { var resp = await page.request.post(BASE_URL + '/api/wishes/detail', { headers: authHeaders(auth), data: { wishId: 1 } }); var data = await assertApiSuccess(resp); expect(data).toBeDefined(); }); test('[场景5] 心愿审批失败 — 无效的wishId期望返回错误', async ({ page }) => { var resp = await page.request.post(BASE_URL + '/api/wishes/approve', { headers: authHeaders(auth), data: { wishId: 999999, action: 'approve' } }); await assertApiError(resp); }); });