971 B
971 B
TESTS — F-004 Typed config and feature flags
Unit — src/infrastructure/config/tests/config.test.ts
- Valid full env -> typed AppConfig (port number, nodeEnv enum, flags parsed)
- Missing DATABASE_URL -> ConfigError naming DATABASE_URL
- Invalid PORT (non-numeric / out of range) -> ConfigError naming PORT
- Invalid NODE_ENV -> ConfigError
- FLAG_* true/false parsed; unknown flag value -> ConfigError naming the var
- Multiple problems -> single ConfigError listing all of them
Unit — src/modules/flags/tests/feature-flag-store.test.ts
- Known flag on -> isEnabled true; known flag off -> false
- Unknown flag -> false (fail-safe)
- setEnabled flips state at runtime (no new store / no redeploy)
- createFlagStore seeds initial state
Composition
- buildApp with flags dep: guarded path skipped when flag off, runs when on
Manual / QA
- Start server without DATABASE_URL -> clear error naming the var, non-zero exit.
- verify.sh green.