Aller au contenu

PD-84 — Matrice de traçabilité TC-* → Fichiers de test

Services

Test Case Description Fichier de test Invariant/CA
TC-01 Create folder — FREE, under quota test/unit/modules/freemium/services/folder.service.spec.ts CA-84-01, CA-84-02, F-84-01
TC-02 Create folder — quota limit → 422 + CTA test/unit/modules/freemium/services/folder.service.spec.ts INV-84-04, INV-84-07, INV-84-11
TC-03 Close folder — ACTIVE → CLOSED_READ_ONLY test/unit/modules/freemium/services/folder.service.spec.ts INV-84-08, CA-84-07
TC-04 Close folder — already closed → 409 test/unit/modules/freemium/services/folder.service.spec.ts ECT-12
TC-05 List folders — active + closed test/unit/modules/freemium/services/folder.service.spec.ts CA-84-06
TC-06 Add document — under quota test/unit/modules/freemium/services/folder-document.service.spec.ts CA-84-03, F-84-02
TC-07 Add document — quota limit → 422 + CTA test/unit/modules/freemium/services/folder-document.service.spec.ts INV-84-04, INV-84-11
TC-08 Add document to closed folder → 422 test/unit/modules/freemium/services/folder-document.service.spec.ts CA-84-08
TC-09 FREE capabilities (all false) test/unit/modules/freemium/services/capability.service.spec.ts INV-84-06
TC-09-bis PREMIUM capabilities (all true) test/unit/modules/freemium/services/capability.service.spec.ts INV-84-06
TC-10 Change plan FREE → PREMIUM test/unit/modules/freemium/services/plan.service.spec.ts INV-84-05, INV-84-06
TC-10-bis PlanStubGuard blocks when disabled test/unit/modules/freemium/guards/plan-stub.guard.spec.ts ECT-v2-05, SEC-84-02

Limites et Concurrence

Test Case Description Fichier de test Invariant/CA
TC-LIM-01 pg_advisory_xact_lock on folder creation test/unit/modules/freemium/services/folder.service.spec.ts INV-84-04
TC-LIM-02 pg_advisory_xact_lock on document addition test/unit/modules/freemium/services/folder-document.service.spec.ts INV-84-04

SLA

Test Case Description Fichier de test Invariant/CA
TC-SLA-01 duration_ms tracking test/unit/modules/freemium/services/plan.service.spec.ts SLA-84-01

Audit

Test Case Description Fichier de test Invariant/CA
TC-AUD-01 Audit folder creation test/unit/modules/freemium/services/folder.service.spec.ts INV-84-15
TC-AUD-02 Audit quota refusal (folder) test/unit/modules/freemium/services/folder.service.spec.ts INV-84-15, SEC-84-03
TC-AUD-03 Audit folder closure test/unit/modules/freemium/services/folder.service.spec.ts INV-84-15
TC-AUD-04 Audit document quota refusal test/unit/modules/freemium/services/folder-document.service.spec.ts INV-84-15
TC-AUD-05 Audit plan change test/unit/modules/freemium/services/plan.service.spec.ts INV-84-15
TC-AUD-06 Audit export refusal test/unit/modules/freemium/controllers/export.controller.spec.ts ECT-11, INV-84-15

Sécurité

Test Case Description Fichier de test Invariant/CA
TC-SEC-01 Owner can access folder test/unit/modules/freemium/guards/folder-owner.guard.spec.ts SEC-84-02
TC-SEC-02 Non-owner → 404 (neutral error) test/unit/modules/freemium/guards/folder-owner.guard.spec.ts SEC-84-02, INV-84-12
TC-SEC-03 No userId → 404 test/unit/modules/freemium/guards/folder-owner.guard.spec.ts SEC-84-02
TC-SEC-04 Stub endpoint returns 404 (invisible) test/unit/modules/freemium/guards/plan-stub.guard.spec.ts INV-84-09, SEC-84-02
TC-SEC-05 Triple verrou — runtime guard test/unit/modules/freemium/guards/plan-stub.guard.spec.ts INV-84-09

Erreurs

Test Case Description Fichier de test Invariant/CA
TC-ERR-01 Error response: code + non-empty message test/unit/modules/freemium/exceptions/freemium.exception.spec.ts Spec §6.1
TC-ERR-02 HTTP status mapping test/unit/modules/freemium/exceptions/freemium.exception.spec.ts Spec §6.1
TC-ERR-03 upgrade_cta for quota/premium errors test/unit/modules/freemium/exceptions/freemium.exception.spec.ts INV-84-07

Export

Test Case Description Fichier de test Invariant/CA
TC-EXP-01 FREE → export refused (422) test/unit/modules/freemium/controllers/export.controller.spec.ts INV-84-14, CA-84-05
TC-EXP-02 PREMIUM → 501 (PD-85 stub) test/unit/modules/freemium/controllers/export.controller.spec.ts PD-85

Contrôleurs

Test Case Description Fichier de test Invariant/CA
TC-CTRL-01 POST /folders delegation test/unit/modules/freemium/controllers/folder.controller.spec.ts CA-84-01
TC-CTRL-02 GET /folders delegation test/unit/modules/freemium/controllers/folder.controller.spec.ts CA-84-06
TC-CTRL-03 GET /folders/:id delegation test/unit/modules/freemium/controllers/folder.controller.spec.ts
TC-CTRL-04 POST /folders/:id/close delegation test/unit/modules/freemium/controllers/folder.controller.spec.ts CA-84-07
TC-CTRL-05 GET /capabilities test/unit/modules/freemium/controllers/capability.controller.spec.ts INV-84-06
TC-CTRL-06 PUT /account/plan delegation test/unit/modules/freemium/controllers/plan.controller.spec.ts INV-84-05
TC-CTRL-07 POST /folders/:id/documents delegation test/unit/modules/freemium/controllers/folder-document.controller.spec.ts CA-84-03

DTOs

Test Case Description Fichier de test Invariant/CA
TC-DTO-01 CreateFolderDto valid input test/unit/modules/freemium/dto/create-folder.dto.spec.ts
TC-DTO-02 CreateFolderDto missing display_name test/unit/modules/freemium/dto/create-folder.dto.spec.ts
TC-DTO-03 CreateFolderDto invalid category test/unit/modules/freemium/dto/create-folder.dto.spec.ts F-84-19
TC-DTO-04 CreateFolderDto max length test/unit/modules/freemium/dto/create-folder.dto.spec.ts
TC-DTO-05 ChangePlanDto valid plan_type test/unit/modules/freemium/dto/change-plan.dto.spec.ts
TC-DTO-06 ChangePlanDto invalid plan_type test/unit/modules/freemium/dto/change-plan.dto.spec.ts
TC-DTO-07 FolderResponseDto field mapping test/unit/modules/freemium/dto/folder-response.dto.spec.ts

Invariants

Test Case Description Fichier de test Invariant/CA
TC-INV-01 Same sealing pipeline FREE/PREMIUM test/unit/modules/freemium/services/folder-document.service.spec.ts INV-84-01, INV-84-02
TC-INV-05 Premium upgrade immediate test/unit/modules/freemium/services/plan.service.spec.ts INV-84-05
TC-INV-06 Capabilities computed (never cached) test/unit/modules/freemium/services/capability.service.spec.ts INV-84-06
TC-INV-07 export_cta for FREE plan test/unit/modules/freemium/dto/folder-response.dto.spec.ts INV-84-07
TC-INV-12 No content field in response test/unit/modules/freemium/dto/folder-response.dto.spec.ts INV-84-12

Non-régression

Test Case Description Fichier de test Invariant/CA
TC-NR-01 Enum values stability test/unit/modules/freemium/freemium-nonreg.spec.ts Migration compat
TC-NR-02 Error codes completeness test/unit/modules/freemium/freemium-nonreg.spec.ts Spec §6.1
TC-NR-03 FREE plan export_cta contract test/unit/modules/freemium/freemium-nonreg.spec.ts INV-84-07
TC-NR-04 Folder status transitions (2 states only) test/unit/modules/freemium/freemium-nonreg.spec.ts INV-84-08

Résumé

Catégorie Nombre de TC
Services 12
Limites/Concurrence 2
SLA 1
Audit 6
Sécurité 5
Erreurs 3
Export 2
Contrôleurs 7
DTOs 7
Invariants 5
Non-régression 4
TOTAL 54

Fichiers de test

Fichier TC couverts
services/folder.service.spec.ts TC-01, TC-02, TC-03, TC-04, TC-05, TC-LIM-01, TC-AUD-01, TC-AUD-02, TC-AUD-03
services/folder-document.service.spec.ts TC-06, TC-07, TC-08, TC-INV-01, TC-LIM-02, TC-AUD-04
services/capability.service.spec.ts TC-09, TC-09-bis, TC-INV-06
services/plan.service.spec.ts TC-10, TC-SLA-01, TC-INV-05, TC-AUD-05
guards/folder-owner.guard.spec.ts TC-SEC-01, TC-SEC-02, TC-SEC-03
guards/plan-stub.guard.spec.ts TC-10-bis, TC-SEC-04, TC-SEC-05
exceptions/freemium.exception.spec.ts TC-ERR-01, TC-ERR-02, TC-ERR-03
controllers/folder.controller.spec.ts TC-CTRL-01, TC-CTRL-02, TC-CTRL-03, TC-CTRL-04
controllers/export.controller.spec.ts TC-EXP-01, TC-EXP-02, TC-AUD-06
controllers/capability.controller.spec.ts TC-CTRL-05
controllers/plan.controller.spec.ts TC-CTRL-06
controllers/folder-document.controller.spec.ts TC-CTRL-07
dto/create-folder.dto.spec.ts TC-DTO-01, TC-DTO-02, TC-DTO-03, TC-DTO-04
dto/change-plan.dto.spec.ts TC-DTO-05, TC-DTO-06
dto/folder-response.dto.spec.ts TC-DTO-07, TC-INV-07, TC-INV-12
freemium-nonreg.spec.ts TC-NR-01, TC-NR-02, TC-NR-03, TC-NR-04