wal: flush 20260801T1242
This commit is contained in:
@ -66,12 +66,42 @@ File MỚI: `tests/SolutionErp.Infrastructure.Tests/Api/KhkkBridgeAuthzTests.cs`
|
||||
| 4 | `CauKhkkSangHd_Admin_KhongCanDongQuyenNao_VanQua` | khoá nhánh bypass (0 dòng `Permissions`) — chống "siết cho nhất quán" rồi khoá luôn Admin |
|
||||
| 5 | `CauKhkkSangHd_UserBiVoHieuHoa_ThiChan_DuCoDuQuyen` | **cùng bộ quyền, đổi ĐÚNG 1 biến `IsActive`** ⇒ kết quả ngược (nghỉ việc mà token còn hạn) |
|
||||
|
||||
## §3b — Vá-7 B6 neo mới
|
||||
## §3b — [✅ XONG] Vá-7 B6 neo mới = **T12 end-to-end** — `--filter CreateContractFromSigningPlanTests` → **12/12** (11 + T12)
|
||||
|
||||
CHƯA ĐO.
|
||||
`T12_DiTronDuongFinalizeRoiBacCau_GiaTriLaSoDaCHOT_VaKhongDoiVeSau` (cùng file §2).
|
||||
|
||||
## §4 — Suite FULL
|
||||
**KHÔNG chỉ "thêm 1 assert vào test K3"** — lý do khai rõ: test K3 dừng ở "finalize GHI `ApprovedAmount`"; cầu K7 thì ĐỌC cột đó; **mối nối giữa 2 vế chưa ai đo**, mà chính nó là điều kiện sống của happy-path (invest `:154`: "không có K3 thì `ApprovedAmount` NULL 100%" ⇒ cầu chặn mọi phiếu). T12 cho phiếu đi TRỌN đường qua `ContractSigningPlanWorkflowService` THẬT (trình → duyệt → terminal chốt giá) rồi mới bắc cầu — **KHÔNG seed thẳng Phase/giá** (seed thẳng = tự đưa đáp án rồi chấm).
|
||||
|
||||
CHƯA ĐO.
|
||||
- neo (a) `Phase == DaDuyet` do MÁY tự đi tới.
|
||||
- neo (b) **tương phản chống-rỗng:** dòng A `Approved=111` chốt sẵn (`Proposed=999`) · dòng B `Approved=null` (`Proposed=250`) ⇒ sau finalize phải là {111, 250} — chứng `??=` GIỮ số người có thẩm quyền chốt tay, không bị 999 đè.
|
||||
- neo (c) `GiaTri == 361` = 111+250. Σ `Proposed` = 1249; lấy nhầm nguồn ra 1249/1109/500 — **mọi cách sai đều KHÁC 361**.
|
||||
- vế cuối theo đúng chữ vá-7: sau bắc cầu, bấm `approve` lần nữa → `ConflictException` (phiếu terminal) và đọc lại **`Line.ContractId` KHÔNG đổi** + `ApprovedAmount` KHÔNG đổi.
|
||||
|
||||
END test-k7 — VERDICT=IN-PROGRESS
|
||||
## §4 — [✅ XONG] Suite FULL `dotnet test SolutionErp.slnx --nologo`
|
||||
|
||||
```
|
||||
Passed! - Failed: 0, Passed: 45, Total: 45 — SolutionErp.Domain.Tests
|
||||
Passed! - Failed: 0, Passed: 594, Total: 594 — SolutionErp.Infrastructure.Tests
|
||||
```
|
||||
|
||||
| | Domain | Infra | Tổng | FAIL |
|
||||
|---|---|---|---|---|
|
||||
| Baseline (đo tươi @§0) | 45 | 577 | **622** | **1** (bàn giao BE) |
|
||||
| Sau K7-test | 45 | **594** | **639** | **0** |
|
||||
| Δ | 0 | **+17** | **+17** | −1 |
|
||||
|
||||
**+17 = 12** (`CreateContractFromSigningPlanTests`, T1-T12) **+ 5** (`KhkkBridgeAuthzTests`). File `AuthorizePolicyRegressionTests` +0 test (sửa test sẵn có: 1 FAIL → PASS, +2 vế assert).
|
||||
|
||||
- Flaky đã khai `DeleteContractSigningPlan_SoftDeletes`: **KHÔNG nổ** lượt này (0 Failed, chạy 1 lần duy nhất — không phải chạy lại).
|
||||
- **Dấu chân trên đĩa (`git status`):** đúng **3 file `tests/**`** (1 M + 2 ??). `src/Backend/**` + `fe-*/**` dirty là của lane BE/FE, **tôi không chạm 1 dòng nào**. KHÔNG commit.
|
||||
|
||||
## §5 — FLAG cho lead
|
||||
|
||||
**0 FLAG bug production.** 12 test bridge + 5 authz đều xanh trên mã BE hiện tại; không có test nào phải giữ ĐỎ.
|
||||
|
||||
2 việc KHAI để lead phân xử (không phải bug, là chỗ lệch giấy tờ / vùng chưa phủ):
|
||||
|
||||
1. 🟡 **Lệch spec đã đo (giấy tờ, không phải mã):** bảng invest T1 `:75` ghi `WorkflowDefinitionId null` — **vá-6 thắng** và mã đang pin V1. Tôi test theo CODE + vá-6, ghi mismatch trong header file test. Nếu lead muốn giữ chữ của bảng invest thì phải sửa MÃ (không phải sửa test).
|
||||
2. 🟡 **Vùng KHÔNG phủ được bằng unit test, thuộc acceptance sau restart:** `SeedContractCreateAccessAsync` (`DbInitializer.cs:2757-2822`) — grant `Contracts.Create` chỉ ăn **@restart API prod**. `KhkkBridgeAuthzTests` chứng "vai có 2 vế thì qua / thiếu 1 vế thì 403" nhưng KHÔNG chứng seeder THẬT cấp đúng vai (Drafter/Procurement/Admin) và cấp SAU revoker (#84). Nghiệm thu vẫn phải là đếm row `Permissions WHERE MenuKey='Contracts' AND CanCreate=1` sau restart thật — đúng như implbe-k7 §1 đã khai.
|
||||
|
||||
END test-k7 — VERDICT=DONE (suite FULL 639/0 = 45 Domain + 594 Infra · Δ+17 · 1 FAIL bàn-giao đã đóng · 0 file production chạm · chưa commit)
|
||||
|
||||
Reference in New Issue
Block a user