thread-master/docs/product/haixun-backend/tasks/T119-test-m1-auth-admin-int...

79 lines
2.1 KiB
Markdown
Raw Permalink Normal View History

2026-07-10 12:54:45 +00:00
# T119 — test-m1-auth-admin-integration
> Status: `done`
> Milestone: `M1`
> Kind: `test`
2026-07-13 01:15:30 +00:00
> Est. change: `~200 lines` (target 100200)
> Updated: `2026-07-10` — 補齊 greppable §9 cases + `make test-integration`
2026-07-10 12:54:45 +00:00
## Goal
完成後系統應M1 §9 Auth/Admin 全 ID 自動化
## Depends on
- T107
- T111
- T112
- T113
- T114
- T115
- T116
- T118
## Inputs
- 讀取 / 依賴:
- §9.19.5
- Spec`docs/product/haixun-backend/spec.md`§9AU-0114 AR-0109 AP-0108 AO-0106 AD-0114
- 對照:`docs/product/haixun-backend/fe-spec-alignment.md`**UI MUST**
- 後端根:**`apps/backend`**
- **Remove本 task 禁止實作):** 舊靈感 list/viral/bookmark/spark/searchTrendsgenerateFromFormulaScoutTopic CRUDlive 以 simulatecreateMock 當完成Insights 真管線P2
## Outputs
### 程式變更(預期路徑)
| 路徑 | 動作 | 說明 |
|------|------|------|
| `apps/backend/internal/**/*_test.go` | add | AU AR AP AO AD 全 case |
### 行為變更
- T119 綠 = M1 測試閘
### API / 契約(若有)
-
### 測試交付(強制)
- 每個 ID 可 grep
## Out of scope
- FE
## Acceptance
2026-07-13 01:15:30 +00:00
- [x] SpecUI MUST 覆蓋:`AU-0114 AR-0109 AP-0108 AO-0106 AD-0114`service + middleware見下方檔案
- [x] 每個相關 §9 ID 有可 grep 的 case 名(`TestAU_01_…` 等)
- [x] 未實作不回 102000+空 datamiddleware 失敗 envelope
- [x] 指令:
2026-07-10 12:54:45 +00:00
```bash
cd apps/backend && make test-integration
```
## Notes
2026-07-13 01:15:30 +00:00
| 檔案 | 覆蓋 |
|------|------|
| `internal/module/member/usecase/m1_t119_test.go` | AU / AR / AP / AO / AD 業務 |
| `internal/module/member/usecase/auth_test.go` | AU-01/02/07、AR-02、AO bind/login 基底 |
| `internal/middleware/m1_t119_auth_test.go` | AU-05/06/12/13、AD-13 HTTP 中介層 |
- AP-08domain 層測 URL set/cleardata URL 拒絕在 `update_profile_logic`(手動/後續 HTTP 測)
- AR-08AP-03 過期fake store 無 TTL以「缺碼已消費」等同 ErrInvalidCode
- AD-07 self-suspend 守衛在 admin logictest 鎖定 `ErrSelfSuspend` 契約