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 100–200)
|
|
|
|
|
|
> 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.1–9.5
|
|
|
|
|
|
- Spec:`docs/product/haixun-backend/spec.md`(§9:AU-01~14 AR-01~09 AP-01~08 AO-01~06 AD-01~14)
|
|
|
|
|
|
- 對照:`docs/product/haixun-backend/fe-spec-alignment.md`(**UI MUST**)
|
|
|
|
|
|
- 後端根:**`apps/backend`**
|
|
|
|
|
|
- **Remove(本 task 禁止實作):** 舊靈感 list/viral/bookmark/spark/searchTrends;generateFromFormula;ScoutTopic CRUD;live 以 simulate/createMock 當完成;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] Spec/UI MUST 覆蓋:`AU-01~14 AR-01~09 AP-01~08 AO-01~06 AD-01~14`(service + middleware;見下方檔案)
|
|
|
|
|
|
- [x] 每個相關 §9 ID 有可 grep 的 case 名(`TestAU_01_…` 等)
|
|
|
|
|
|
- [x] 未實作不回 102000+空 data(middleware 失敗 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-08:domain 層測 URL set/clear;data URL 拒絕在 `update_profile_logic`(手動/後續 HTTP 測)
|
|
|
|
|
|
- AR-08/AP-03 過期:fake store 無 TTL,以「缺碼/已消費」等同 ErrInvalidCode
|
|
|
|
|
|
- AD-07 self-suspend 守衛在 admin logic;test 鎖定 `ErrSelfSuspend` 契約
|