""" 红娘转介 E2E(INV-005:红娘不可代用户操作)。 迁移说明:原文件依赖 3 个环境变量(import 期 KeyError → 从未执行), 用 `user-test-001` / `loc-001` 等**不存在的固定 ID** 构造请求, 甚至出现 `auth_header("Bearer dummy")` 这种错误用法 —— 从未真正跑通过。 改造后只保留可真实执行的断言;被 D-24-E 权限缺口阻塞的场景在下方注释中 如实记录,不写成"看起来在测、实际恒过"的假用例。 """ import pytest pytestmark = pytest.mark.e2e def test_referral_history_is_accessible(api, user_token): data = api.ok("GET", "/referrals/my-history", token=user_token) assert isinstance(data, list) def test_matchmaker_cannot_confirm_on_users_behalf(api, operator_token, new_user): """ INV-005:红娘不能替用户确认转介。 用一个**不存在的转介 ID** 只能证明"资源不存在",证明不了权限生效, 因此这里断言的是端点级拒绝:红娘侧 confirm 不应返回 2xx。 """ mm_token = operator_token("e2e_matchmaker") resp = api.call( "POST", "/referrals/00000000-0000-0000-0000-000000000000/confirm", token=mm_token, json={"targetType": "service_station"}, ) assert not (200 <= resp.status_code < 300), ( f"红娘竟能代用户确认转介:HTTP {resp.status_code} {resp.text[:200]}" ) # --------------------------------------------------------------------------- # 被阻塞场景(D-24-E:全新库下 matchmaker 角色 0 权限、super_admin 仅 18/48) # # 下列场景当前无法真实执行,故**不写成用例**(写上去只能靠"资源不存在"恒过, # 那正是本轮要清除的假覆盖): # - 红娘创建转介(POST /referrals/service-station)→ 当前 403 # - 红娘转介活动(POST /referrals/activity)→ 当前 403 # - 转介 source 追踪(需真实 appointmentId) # # 待权限 seed 补齐(见 Phase 24 报告 D-24-E)后,按上述真实链路补齐用例。 # ---------------------------------------------------------------------------