carrier-config-page
A. 超管(SUPER)
✅ A1 超管打得开(HTTP 200)
实得 200
✅ A2 页面标题在
✅ A3 承运商名来自 Registry::labels()
✅ A4 寄件人区块在
✅ A5 包裹默认尺寸区块在(所有快递共用,留在列表页)
✅ A6 🔴 列表页不渲染账号字段
实得 ["carrier_default_weight_kg","carrier_default_length_cm","carrier_default_width_cm","carrier_default_height_cm","carrier_sender_name","carrier_sender_company","carrier_sender_phone","carrier_sender_mobile","carrier_sender_country","carrier_sender_state","carrier_sender_city","carrier_sender_county","carrier_sender_address1","carrier_sender_address2","carrier_sender_address3","carrier_sender_address4","carrier_sender_postcode"]
✅ A7 列表页有指向详情页的「配置」链接
B. 动态表单(加一家快递不改 HTML)
✅ B0 详情页打得开
实得 200
✅ B0b 详情页有回列表的路(不然进去就出不来)
✅ B0c 🔴 详情页带着是哪一家(丢了它保存端点会拒)
✅ B-carrier_easyparcel_client_id 渲染出来了
✅ B-carrier_easyparcel_client_secret 渲染出来了
✅ B-carrier_sender_name 渲染在列表页
✅ B-carrier_sender_postcode 渲染在列表页
✅ B-carrier_sender_state 渲染在列表页
✅ B-🔴 carrier_easyparcel_access_token 不渲染成输入框
它出现在表单里了 —— 保存时会把掩码写回去,授权当场失效
✅ B-🔴 carrier_easyparcel_refresh_token 不渲染成输入框
它出现在表单里了 —— 保存时会把掩码写回去,授权当场失效
✅ B-🔴 carrier_easyparcel_token_expire 不渲染成输入框
它出现在表单里了 —— 保存时会把掩码写回去,授权当场失效
✅ B-🔴 carrier_easyparcel_account_currency 不渲染成输入框
它出现在表单里了 —— 保存时会把掩码写回去,授权当场失效
✅ B-🔴 环境下拉已经不存在(它曾经是个拨了没用的开关)
✅ B-页面写明:对方不给环境标识
✅ B-页面写明:所以按你要用的那种点
C. 侧栏
✅ C1 父项「网站配置」高亮
实得 ["网站配置"]
✅ C2 🔴 本页自己带着网站配置的 tab 条
实得 ["网站信息配置","用户信息配置","图片资源配置","支付方式配置","快递账号配置","作品导出配置","订单与账户规则"]
✅ C3 tab 条上高亮的是自己
实得 ["快递账号配置"]
✅ C4 🔴 从同组的另一页点得进本页(入口真的存在)
实得 ["xitongguanli_wangzhanpeizhi","yonghuxinxipeizhi_m5_xiugai","wangzhantupian_m5_xiugai","zhifufangshiguanli","wangzhanguanli_carrier","daochu_sezhi","dingdanguize_sezhi"]
D. 🔴 受限管理员(vip=10)
✅ D1 GET 配置页被拒
✅ D2 POST 保存端点也被拒
E. 守卫
✅ E1 超管仍打得开支付方式配置(同为 SUPER)
实得 200
✅ E2 超管仍打得开配送方式(位 35)
实得 200
✅ E3 受限管理员照常能开自己有位的页面
F. 🔴 保存配置不能把授权清掉(写库组)
✅ F1 配好凭据后授权按钮出现
✅ F2 已连接账号的结算货币显示出来
✅ F3 令牌显示「已获取」
✅ F4 🔴 保存后 access_token 还在
实得 "E2E-ATOKEN"
✅ F5 🔴 保存后 refresh_token 还在
实得 "E2E-RTOKEN"
✅ F5b 🔴 保存后 token_expire 还在
实得 "1789597570"
✅ F5c 🔴 保存后结算货币还在
实得 "MYR"
✅ F6 🔴 守卫:表单确实提交了(手填字段被改掉了)
实得 "E2E-CID-CHANGED"
✅ F6b 🔴 在列表页点保存,不会把账号密钥清掉
实得 secret="E2E-CSEC" token="E2E-ATOKEN" id="E2E-CID-CHANGED"
✅ F7 守卫:凭据清空后授权按钮消失
✅ F8 守卫:并告诉管理员先填什么
✅ F9 账号配置已逐字段还原
实得 {"client_id":"1984b3fc-ba88-4b2f-be98-1f079d253a90","client_secret":"5e9a47bc-9ffe-4366-9d4b-c8cae88d3877","access_token":"eyJhbGciOiJIUzI1NiJ9.eyJhcHAiOnsiY2xpZW50X2lkIjoiMTk4NGIzZmMtYmE4OC00YjJmLWJlOTgtMWYwNzlkMjUzYTkwIn0sInVzZXIiOnsiaWQiOiIwYWExNmI4NWNlODc1MWI4NjIzMTg3YTA5NzY0Y2M3YVpkeVp2d0ZZRHZ6OVlianhaN3MxYVE9PSIsImVhc3lfYWNjb3VudF9pZCI6IjM4ODRiYjM2LTAxMzktNGVjNi1iM2ZjLTlmM2MwZWRlNWRlZCIsImFjY291bnRfaWQiOiIxMDkyMzY1MSJ9LCJhY2NvdW50X2FwcF91dWlkIjoiOTY2N2E3NGItMmJkOS00MzUwLTkyZTMtMTA0Nzk3YzMwZjQyIiwiaWF0IjoxNzg4NzUxNTY1LCJpc3MiOiJlYXN5cGFyY2VsIiwiYXVkIjoiZWFzeXBhcmNlbCIsImV4cCI6MTc4ODc4NzU2NX0.QXolGgxFppnaZInnpH9pyEAmvMknC6-DdJzUiZ-1oH8","refresh_token":"10f13c762311cd70fce9176e092210344447037e95278d01371e0dab5be0e9ce","token_expire":"1788787565","account_currency":"MYR","env":"sandbox","account_id":"10923651"}
预期 {"client_id":"1984b3fc-ba88-4b2f-be98-1f079d253a90","client_secret":"5e9a47bc-9ffe-4366-9d4b-c8cae88d3877","access_token":"eyJhbGciOiJIUzI1NiJ9.eyJhcHAiOnsiY2xpZW50X2lkIjoiMTk4NGIzZmMtYmE4OC00YjJmLWJlOTgtMWYwNzlkMjUzYTkwIn0sInVzZXIiOnsiaWQiOiIwYWExNmI4NWNlODc1MWI4NjIzMTg3YTA5NzY0Y2M3YVpkeVp2d0ZZRHZ6OVlianhaN3MxYVE9PSIsImVhc3lfYWNjb3VudF9pZCI6IjM4ODRiYjM2LTAxMzktNGVjNi1iM2ZjLTlmM2MwZWRlNWRlZCIsImFjY291bnRfaWQiOiIxMDkyMzY1MSJ9LCJhY2NvdW50X2FwcF91dWlkIjoiOTY2N2E3NGItMmJkOS00MzUwLTkyZTMtMTA0Nzk3YzMwZjQyIiwiaWF0IjoxNzg4NzUxNTY1LCJpc3MiOiJlYXN5cGFyY2VsIiwiYXVkIjoiZWFzeXBhcmNlbCIsImV4cCI6MTc4ODc4NzU2NX0.QXolGgxFppnaZInnpH9pyEAmvMknC6-DdJzUiZ-1oH8","refresh_token":"10f13c762311cd70fce9176e092210344447037e95278d01371e0dab5be0e9ce","token_expire":"1788787565","account_currency":"MYR","env":"sandbox","account_id":"10923651"}
[还原] e2e_admin10.userauth = [12,2,66,65,3] ✔
PASS=43 FAIL=0