handle enterprise cases

This commit is contained in:
grambbledook
2026-01-12 16:30:41 +01:00
parent ff570b2427
commit 0def06e393
2 changed files with 13 additions and 15 deletions
+9 -13
View File
@@ -81,7 +81,15 @@ func ParseFlag(name, value string) (memprovider.InMemoryFlag, error) {
return memprovider.InMemoryFlag{Key: name, Variants: map[string]any{DefaultVariantName: value}}, nil
}
func SerializeFlagValue(flag memprovider.InMemoryFlag) string {
func AsStringMap(m map[string]memprovider.InMemoryFlag) map[string]string {
var res = map[string]string{}
for k, v := range m {
res[k] = serializeFlagValue(v)
}
return res
}
func serializeFlagValue(flag memprovider.InMemoryFlag) string {
value, _ := flag.Variants[DefaultVariantName]
switch castedValue := value.(type) {
@@ -103,15 +111,3 @@ func SerializeFlagValue(flag memprovider.InMemoryFlag) string {
return string(val)
}
}
func createFlag(name string, value any) memprovider.InMemoryFlag {
return memprovider.InMemoryFlag{
Key: name,
DefaultVariant: DefaultVariantName,
Variants: map[string]any{
DefaultVariantName: value,
},
}
}
//
+4 -2
View File
@@ -99,9 +99,11 @@ func TestFlagValueSerialization(t *testing.T) {
}
for _, tt := range testCases {
serialized := SerializeFlagValue(tt)
deserialized, err := ParseFlag(tt.Key, serialized)
asStringMap := AsStringMap(map[string]memprovider.InMemoryFlag{tt.Key: tt})
deserialized, err := ParseFlag(tt.Key, asStringMap[tt.Key])
assert.NoError(t, err)
if diff := cmp.Diff(tt, deserialized); diff != "" {
t.Errorf("(-want, +got) = %v", diff)
}