package cmd import ( "strings" "testing" ) func TestServiceConfigRequiresMasterKey(t *testing.T) { _, err := serviceConfigFromEnvironment(func(string) (string, bool) { return "", false }) if err == nil || !strings.Contains(err.Error(), "CHORUS_MASTER_KEY") { t.Fatalf("missing master key error = %v", err) } } func TestServiceConfigKeepsConnectivityDisabledWithoutExplicitAuthorization(t *testing.T) { configured, err := serviceConfigFromEnvironment(testEnvironment(map[string]string{ "CHORUS_MASTER_KEY": "0123456789abcdef0123456789abcdef", })) if err != nil { t.Fatalf("configure disabled connectivity: %v", err) } if configured.config.AllowConnectivityChecks || configured.config.Probe != nil { t.Fatal("connectivity probe must not be created without explicit authorization") } } func TestServiceConfigRequiresAllExplicitConnectivityLimits(t *testing.T) { _, err := serviceConfigFromEnvironment(testEnvironment(map[string]string{ "CHORUS_MASTER_KEY": "0123456789abcdef0123456789abcdef", "CHORUS_ADMIN_ALLOW_CONNECTIVITY_PROBES": "1", })) if err == nil || !strings.Contains(err.Error(), "CHORUS_ADMIN_CONNECTIVITY_COOLDOWN_SECONDS") { t.Fatalf("missing cooldown error = %v", err) } } func testEnvironment(values map[string]string) func(string) (string, bool) { return func(key string) (string, bool) { value, ok := values[key] return value, ok } }