Test Cases: Registration & Prospects

Module: Membership & Profiles - Registration, Guests & Prospects

Backend: createRegistration (self-register / admin alias), prospect + application handlers.

Frontend: self-registration /register (pages/RegisterPage.tsx); prospects /admin/prospects (pages/AdminProspectsPage.tsx); registration-field config /admin/members/settings?tab=fields.

No "Add Member" button. Intake is via (A) the Prospects pipeline (Add Prospect / invite / approve application) or (B) self-service /register. The seeded pending@demo.membervu.com (Miguel) is an APPLIED prospect with member status GUEST_ATTENDEE; the seeded guest@demo.membervu.com (Roberto) has role GUEST but member status ACTIVE.

Test Cases

TC-REG-01: Self-Service Registration

StepActionExpected Result
1Open /register (incognito).Core fields: First Name*, Last Name*, Email*, Phone (international, optional), Address, LinkedIn, Other socials. No password field at the form.
2Fill the fields (use an intl phone) and click "Create account".Success: "Check your email — verification link sent". Phone is persisted (#182). Status depends on tenant config: PENDING_APPROVAL / PENDING_PAYMENT / ACTIVE.

TC-REG-02: Tenant-Configurable Registration Fields (#185)

StepActionExpected Result
1As ADMIN, go to Member Settings → Fields (/admin/members/settings?tab=fields). For a native field (company/profession) or a custom field, toggle "Show at registration" (and optionally "Required at registration").Config saved. (>3 required fields shows a completion-rate warning.)
2Reload /register.An "Additional information" section now renders the configured field(s), in the configured order; required ones block submit until filled.

TC-REG-03: Invitation Flow

StepActionExpected Result
1As ADMIN/MEMBERSHIP_MANAGER, from Prospects, invite an eligible prospect.Invitation email sent (POST /api/membership/invitations).
2Open the invite link (/register?token=…).Heading becomes "Accept Your Invitation"; email is pre-filled + locked. Submitting consumes the token.

TC-PRP-01: Add & Advance a Prospect

StepActionExpected Result
1As ADMIN, Prospects (/admin/prospects) → "Add Prospect" → Email*, First*, Last* → submit.Prospect created in the pipeline (New → Interested → Invited → Review → Approved).
2Advance via the stage chevrons / quick actions (Move to Review, Approve, Decline).prospectStatus updates; Approve opens the Approve-Application modal (membership type + optional dues invoice).

TC-GST-01: Guest → Member Conversion (re-registration)

StepActionExpected Result
1Have a guest record (role GUEST). Register at /register using the same email.Backend detects the existing record and updates it (no duplicate).
2Verify.The member transitions out of the guest role into the registration flow (→ PENDING_APPROVAL / PENDING_PAYMENT / ACTIVE per config).