Skip to content

Commit 3d601c4

Browse files
committed
case insensitive parsing of resolver
Signed-off-by: Kavindu Dodanduwa <[email protected]>
1 parent b86c8e4 commit 3d601c4

File tree

2 files changed

+14
-5
lines changed

2 files changed

+14
-5
lines changed

Diff for: providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/Config.java

+4-1
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,14 @@
11
package dev.openfeature.contrib.providers.flagd;
22

33
import dev.openfeature.contrib.providers.flagd.resolver.grpc.cache.CacheType;
4+
import lombok.extern.slf4j.Slf4j;
45

56
import java.util.function.Function;
67

78
/**
89
* Helper class to hold configuration default values.
910
*/
11+
@Slf4j
1012
public final class Config {
1113
static final Evaluator DEFAULT_RESOLVER_TYPE = Evaluator.RPC;
1214
static final String DEFAULT_PORT = "8013";
@@ -64,12 +66,13 @@ static Evaluator fromValueProvider(Function<String, String> provider) {
6466
return DEFAULT_RESOLVER_TYPE;
6567
}
6668

67-
switch (resolverVar) {
69+
switch (resolverVar.toLowerCase()) {
6870
case "in-process":
6971
return Evaluator.IN_PROCESS;
7072
case "rpc":
7173
return Evaluator.RPC;
7274
default:
75+
log.warn("Unsupported resolver variable: {}", resolverVar);
7376
return DEFAULT_RESOLVER_TYPE;
7477
}
7578
}

Diff for: providers/flagd/src/test/java/dev/openfeature/contrib/providers/flagd/FlagdOptionsTest.java

+10-4
Original file line numberDiff line numberDiff line change
@@ -70,11 +70,17 @@ public void TestBuilderOptions() {
7070

7171
@Test
7272
public void testValueProviderForEdgeCase_valid() {
73-
Function<String, String> dummy = s -> "in-process";
74-
assertEquals(Config.Evaluator.IN_PROCESS, Config.fromValueProvider(dummy));
73+
Function<String, String> valueProvider = s -> "in-process";
74+
assertEquals(Config.Evaluator.IN_PROCESS, Config.fromValueProvider(valueProvider));
7575

76-
dummy = s -> "rpc";
77-
assertEquals(Config.Evaluator.RPC, Config.fromValueProvider(dummy));
76+
valueProvider = s -> "IN-PROCESS";
77+
assertEquals(Config.Evaluator.IN_PROCESS, Config.fromValueProvider(valueProvider));
78+
79+
valueProvider = s -> "rpc";
80+
assertEquals(Config.Evaluator.RPC, Config.fromValueProvider(valueProvider));
81+
82+
valueProvider = s -> "RPC";
83+
assertEquals(Config.Evaluator.RPC, Config.fromValueProvider(valueProvider));
7884
}
7985

8086
@Test

0 commit comments

Comments
 (0)