namespace Azaion.Missions.E2E; /// /// Resolves the shared test-time configuration block sourced from the /// docker-compose.test.yml env vars. Centralised so individual tests stay /// behavioural and don't repeat env-var lookups. /// public static class TestEnvironment { public static string MissionsBaseUrl => Environment.GetEnvironmentVariable("MISSIONS_BASE_URL") ?? "http://missions:8080"; public static string DbSideChannel => Environment.GetEnvironmentVariable("DB_SIDE_CHANNEL") ?? throw new InvalidOperationException( "DB_SIDE_CHANNEL not set (expected in docker-compose.test.yml)."); public static string JwksMockSignUrl => Environment.GetEnvironmentVariable("JWKS_MOCK_SIGN_URL") ?? "https://jwks-mock:8443/sign"; public static string JwksMockBaseUrl => new Uri(JwksMockSignUrl).GetLeftPart(UriPartial.Authority); public static string JwtIssuer => Environment.GetEnvironmentVariable("JWT_ISSUER") ?? "https://admin-test.azaion.local"; public static string JwtAudience => Environment.GetEnvironmentVariable("JWT_AUDIENCE") ?? "azaion-edge"; public static string ResultsDirectory => Environment.GetEnvironmentVariable("RESULTS_DIR") ?? "/app/results"; }