TC_ADMIN_002: Tenant Configuration Verification

Test Case Information

FieldValue
Test IDTC_ADMIN_002
ModulePlatform Administration
PriorityP0 - Blocker
TypeConfiguration Test
PrerequisitesTC_ADMIN_001 passed, Seed script run

Objective

Verify the rcme tenant exists with all required configuration.


Test Tenant Details

FieldExpected Value
Slugrcme
NameRotary Club of Manila Expats
DescriptionRCME tenant - aligned with playwright-e2e fixtures

Test Steps

Step 1: Verify Tenant Exists

ActionQuery tenant via API or database
APIGET /api/tenants/rcme (if endpoint exists)
DB QuerySELECT * FROM "Tenant" WHERE slug = 'rcme'
ExpectedTenant record found

Step 2: Verify Feature Flags

ActionCheck FeatureFlags for tenant
DB QuerySELECT * FROM "FeatureFlags" WHERE "tenantId" = ''

Expected Flags:

FlagValue
paymentstrue
eventstrue
communicationstrue
reportingtrue

Step 3: Verify Organization Profile

ActionCheck OrgProfile for tenant
DB QuerySELECT * FROM "OrgProfile" WHERE "tenantId" = ''

Expected Values:

FieldValue
displayNameRCME
legalNameRotary Club of Manila Expats Inc.
typeclub
currencyPHP
timezoneAsia/Manila
localeen-PH

Step 4: Verify Dues Settings

ActionCheck TenantDuesSettings for tenant
DB QuerySELECT * FROM "TenantDuesSettings" WHERE "tenantId" = ''

Expected Values:

FieldValue
annualAmountCents1500000 (PHP 15,000)

Step 5: Verify Approval Workflow

ActionCheck TenantApprovalWorkflow for tenant
DB QuerySELECT * FROM "TenantApprovalWorkflow" WHERE "tenantId" = ''

Expected Values:

FieldValue
requireApprovaltrue
approverRoles["ADMIN", "MEMBERSHIP_MANAGER"]

Step 6: Verify Membership Types

ActionCheck MembershipType records for tenant
DB QuerySELECT * FROM "MembershipType" WHERE "tenantId" = ''

Expected Types:

NameAmount (cents)Period
Regular Member1500000ANNUAL
Associate Member1000000ANNUAL

Combined Verification Query

SELECT

t.slug,

t.name,

ff.payments,

ff.events,

ff.communications,

ff.reporting,

op."displayName",

op.currency,

op.timezone,

ds."annualAmountCents",

aw."requireApproval",

aw."approverRoles"

FROM "Tenant" t

LEFT JOIN "FeatureFlags" ff ON t.id = ff."tenantId"

LEFT JOIN "OrgProfile" op ON t.id = op."tenantId"

LEFT JOIN "TenantDuesSettings" ds ON t.id = ds."tenantId"

LEFT JOIN "TenantApprovalWorkflow" aw ON t.id = aw."tenantId"

WHERE t.slug = 'rcme';


Pass/Fail Criteria

CriteriaRequired
Tenant existsYes
All feature flags enabledYes
OrgProfile configuredYes
Dues settings configuredYes
Approval workflow configuredYes
Membership types existYes

Troubleshooting

Tenant Not Found

# Run seed script

docker exec membervu-backend npm run seed:rcme

Missing Configuration

# Reset and reseed

docker exec membervu-backend npm run seed:rcme -- --reset


Result Template

ConfigurationStatusNotes
Tenant exists[ ] Pass / [ ] Fail
Feature flags[ ] Pass / [ ] Fail
Org profile[ ] Pass / [ ] Fail
Dues settings[ ] Pass / [ ] Fail
Approval workflow[ ] Pass / [ ] Fail
Membership types[ ] Pass / [ ] Fail
Overall[ ] Pass / [ ] Fail

Tester: _________________

Date: _________________