Test cases: Admin membership (platform vendor)
Document control
Section titled “Document control”| Version | Date (UTC) | Summary |
|---|---|---|
| 1.0.0 | 2026-05-13 | Initial sheet from Membership products (Admin) |
- Routes:
/dashboard/membership-products,membership-subscriptions,membership-invoices, invoice detail. - API:
/admin/membership-products,/admin/membership-subscriptions(see guide for full table). - Vendor-facing loyalty stays in Vendor membership guides — not this sheet.
Scenario catalogue
Section titled “Scenario catalogue”Plans (membership_products)
Section titled “Plans (membership_products)”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-AMP-001 | Happy | List plans with search + status + pagination | E2E* |
| TC-AMP-002 | Happy | Create plan with quota fields; benefits_json validates via parseAndValidateMembershipBenefitsJson | Unit + E2E* |
| TC-AMP-003 | Happy | Blank code on create → backend auto-generates unique code | Unit |
| TC-AMP-004 | Unhappy | Invalid quota / negative caps → 400 with field errors | Unit |
| TC-AMP-005 | Happy | Update plan; linked vendors see effective limits on next fetch (policy) | E2E* |
| TC-AMP-006 | Unhappy | Delete plan linked to subscriptions → guard blocks delete | Unit + E2E* |
| TC-AMP-007 | Happy | Delete plan with no subscriptions → success | Unit |
Subscriptions & invoices (read-mostly)
Section titled “Subscriptions & invoices (read-mostly)”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-AMP-010 | Happy | Subscription list filters (vendor_id, payment_status, pagination) | E2E* |
| TC-AMP-011 | Happy | Invoice detail loads; Download invoice returns text export | E2E* |
| TC-AMP-012 | Unhappy | Subscription id not found → 404 | Unit |
Auth & access
Section titled “Auth & access”| ID | Class | Scenario | Automation |
|---|---|---|---|
| TC-AMP-020 | Happy | AdminJwtAuthGuard allows list for signed-in admin | Unit |
| TC-AMP-021 | Unhappy | No JWT → 401 on all membership admin routes | Unit |
Coverage checklist (this sheet)
Section titled “Coverage checklist (this sheet)”- Parity with
admin-membership-products.api.tswhen new endpoints ship -
VITE_PUBLIC_DOCS_BASE_URLdeep link smoke (optional) from modal - Cross-link vendor Membership subscriptions for CX-facing flows
Parent index: System test cases (index) · Admin API: Admin backend