package config_test import ( "testing" "sneak.berlin/go/smallwebwaf/internal/config" ) // These tests set real environment variables, so none runs in parallel. func TestTokenSetEmptyInTheEnvironmentStopsTheStart(t *testing.T) { t.Setenv(adminToken, "") _, err := config.FromEnvironment(config.NewViper()) want := adminToken + ": is shorter than 32 characters" if err == nil || err.Error() != want { t.Fatalf("error %v, want %s", err, want) } } func TestListSetEmptyInTheEnvironmentReplacesItsDefault(t *testing.T) { t.Setenv(wafBackend, backendURL) t.Setenv(rproxyTrusted, "") cfg, err := config.RProxyFromEnvironment(config.NewViper()) if err != nil { t.Fatalf("settings: %v", err) } if len(cfg.TrustedProxies) != 0 { t.Errorf("trusted proxies %v, want none", cfg.TrustedProxies) } }