src/core/app_env.ts validates an app's environment variables at the boundary (isAppEnvName, isReservedAppEnvName, isAppEnvScope, scopeOfEnv), and no test calls any of them directly.
Done when a new test file proves:
[ ] isAppEnvName accepts A, API_KEY, X1 and a name of NAME_MAX characters; it refuses `, api_key, 1A, _A, A-B, A B, and a name of NAME_MAX + 1`.
[ ] isReservedAppEnvName is true for every name in the module's reserved set and for any FORGE_ prefix (FORGE_APP_DATA, FORGE_X), and false for FORGEX and MY_FORGE_X.
[ ] isAppEnvScope accepts each of APP_ENV_SCOPES and refuses Production, ` and dev; scopeOfEnv` maps the production and preview environments as the module documents.
Test only; a bug it finds is fixed in the same pull.
src/core/app_env.tsvalidates an app's environment variables at the boundary (isAppEnvName,isReservedAppEnvName,isAppEnvScope,scopeOfEnv), and no test calls any of them directly.Done when a new test file proves:
isAppEnvNameacceptsA,API_KEY,X1and a name ofNAME_MAXcharacters; it refuses `,api_key,1A,_A,A-B,A B, and a name ofNAME_MAX + 1`.isReservedAppEnvNameis true for every name in the module's reserved set and for anyFORGE_prefix (FORGE_APP_DATA,FORGE_X), and false forFORGEXandMY_FORGE_X.isAppEnvScopeaccepts each ofAPP_ENV_SCOPESand refusesProduction, `anddev;scopeOfEnv` maps the production and preview environments as the module documents.Test only; a bug it finds is fixed in the same pull.