package featureflag import ( "os" "testing" ) func TestFeatureEnabled_UseWarehouse(t *testing.T) { _, ok := os.LookupEnv("LD_KEY") if !ok { t.Skip("skipping ff test because LD_KEY not set") } enabled, err := FeatureEnabled("", false) if err != nil { t.Fatal(err) } if !enabled { t.Fatal("expected flag to evaluate to true") } } func TestFeatureEnabledForContext(t *testing.T) { _, ok := os.LookupEnv("LD_KEY") if !ok { t.Skip("skipping ff test because LD_KEY not set") } tests := map[string]struct { inputCtx Contextualizer flag string expect bool }{ "BannerContext": {NewBannerContext("35479cbe-8b40-4327-908b-da9074541db6"), "", true}, "ClusterContext": {NewClusterContext("22ab2a9a-c02b-4445-8474-35d624f883cc"), "", true}, } for name, tc := range tests { t.Run(name, func(t *testing.T) { enabled, err := FeatureEnabledForContext(tc.inputCtx, tc.flag, false) if err != nil { t.Fatal(err) } if enabled != tc.expect { t.Fatalf("expected flag to evaluate to %v. actual: %v", tc.expect, enabled) } }) } }