diff --git a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/FlagdProvider.java b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/FlagdProvider.java index 355e92c1e..4ce6e06ee 100644 --- a/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/FlagdProvider.java +++ b/providers/flagd/src/main/java/dev/openfeature/contrib/providers/flagd/FlagdProvider.java @@ -210,7 +210,7 @@ private void onProviderEvent(FlagdProviderEvent flagdProviderEvent) { onConfigurationChanged(flagdProviderEvent); break; } - // intentional fall through + // intentional fall through case PROVIDER_READY: /* * Sync metadata is used to enrich the context, and is immutable in flagd, diff --git a/providers/go-feature-flag/src/test/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderTest.java b/providers/go-feature-flag/src/test/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderTest.java index 7c34fd927..ab0bbbcc2 100644 --- a/providers/go-feature-flag/src/test/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderTest.java +++ b/providers/go-feature-flag/src/test/java/dev/openfeature/contrib/providers/gofeatureflag/GoFeatureFlagProviderTest.java @@ -236,6 +236,7 @@ void should_throw_an_error_if_endpoint_not_available() { FlagEvaluationDetails got = client.getBooleanDetails("fail_500", false, this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(false) + .flagKey("fail_500") .reason(Reason.ERROR.name()) .errorCode(ErrorCode.GENERAL) .errorMessage("unknown error while retrieving flag fail_500") @@ -257,6 +258,7 @@ void should_throw_an_error_if_invalid_api_key() { FlagEvaluationDetails got = client.getBooleanDetails("fail_401", false, this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(false) + .flagKey("fail_401") .reason(Reason.ERROR.name()) .errorCode(ErrorCode.GENERAL) .errorMessage("authentication/authorization error") @@ -277,6 +279,7 @@ void should_throw_an_error_if_flag_does_not_exists() { FlagEvaluationDetails got = client.getBooleanDetails("flag_not_found", false, this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(false) + .flagKey("flag_not_found") .reason(Reason.ERROR.name()) .errorCode(ErrorCode.FLAG_NOT_FOUND) .errorMessage("Flag flag_not_found was not found in your configuration") @@ -297,6 +300,7 @@ void should_throw_an_error_if_we_expect_a_boolean_and_got_another_type() { FlagEvaluationDetails got = client.getBooleanDetails("string_key", false, this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(false) + .flagKey("string_key") .reason(Reason.ERROR.name()) .errorCode(ErrorCode.TYPE_MISMATCH) .errorMessage( @@ -515,6 +519,7 @@ void should_throw_an_error_if_we_expect_a_string_and_got_another_type() { client.getStringDetails("bool_targeting_match", "defaultValue", this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value("defaultValue") + .flagKey("bool_targeting_match") .reason(Reason.ERROR.name()) .errorMessage( "Flag value bool_targeting_match had unexpected type class java.lang.Boolean, expected class java.lang.String.") @@ -579,6 +584,7 @@ void should_throw_an_error_if_we_expect_a_integer_and_got_another_type() { client.getIntegerDetails("bool_targeting_match", 200, this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(200) + .flagKey("bool_targeting_match") .reason(Reason.ERROR.name()) .errorMessage( "Flag value bool_targeting_match had unexpected type class java.lang.Boolean, expected class java.lang.Integer.") @@ -641,6 +647,7 @@ void should_throw_an_error_if_we_expect_a_integer_and_double_type() { FlagEvaluationDetails got = client.getIntegerDetails("double_key", 200, this.evaluationContext); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(200) + .flagKey("double_key") .reason(Reason.ERROR.name()) .errorMessage( "Flag value double_key had unexpected type class java.lang.Double, expected class java.lang.Integer.") @@ -727,8 +734,10 @@ void should_resolve_a_valid_value_flag_with_TARGETING_MATCH_reason() { .value(new Value(new MutableStructure() .add("test", "test1") .add("test2", false) + .add("test5", new Value()) .add("test3", 123.3) .add("test4", 1))) + .flagKey("object_key") .reason(Reason.TARGETING_MATCH.name()) .variant("True") .flagMetadata(defaultMetadata) @@ -772,6 +781,7 @@ void should_throw_an_error_if_no_targeting_key() { client.getObjectDetails("string_key", new Value("CC0000"), new MutableContext()); FlagEvaluationDetails want = FlagEvaluationDetails.builder() .value(new Value("CC0000")) + .flagKey("string_key") .errorCode(ErrorCode.TARGETING_KEY_MISSING) .reason(Reason.ERROR.name()) .build();