brave-controller-43565
05/22/2025, 10:18 AM/* visible for test */ var forcedFeatures: Map<String, GBValue> = emptyMap()
Then i checked inside de sdk , that in the evaluateFeature function it is happening that
/**
* Global override
*/
if (forcedFeature.containsKey(featureKey)) {
if (evaluationContext.loggingEnabled) {
println("Global override for forced feature with key: $featureKey and value ${forcedFeature[featureKey]}")
}
return prepareResult(
featureKey = featureKey,
gbValue = forcedFeature[featureKey]?.let(GBValue::from),
source = GBFeatureSource.override,
)
}
and the most important thing.
gbValue = forcedFeature[featureKey]?.let(GBValue::from),
This is getting me an unexpected result becasue de function from makes that
internal fun from(anyObj: Any): GBValue =
when(anyObj) {
is Boolean -> GBBoolean(anyObj)
is String -> GBString(anyObj)
is Number -> GBNumber(anyObj)
else -> Unknown
}
But my forcedFeature map never gonna be fine, because is Map<String, GBValue> and always is gonna go dor the else case.
Is this a bug or what im doing bad at time of force an experiment result.
Also you can tell me how works setForcedVariation, because i putted the experiment key or feature key and 0 or 1 but is not workingancient-car-96302
05/22/2025, 11:48 AMbrave-controller-43565
05/22/2025, 11:51 AM"3.1.0"ancient-car-96302
05/22/2025, 11:51 AMancient-car-96302
05/22/2025, 11:52 AMbrave-controller-43565
05/22/2025, 11:52 AMbrave-controller-43565
05/22/2025, 11:52 AMancient-car-96302
05/22/2025, 11:53 AMbrave-controller-43565
05/22/2025, 11:53 AMancient-car-96302
05/22/2025, 11:53 AMbrave-controller-43565
05/22/2025, 11:54 AMbrave-controller-43565
05/22/2025, 11:55 AMancient-car-96302
05/22/2025, 11:59 AMbrave-controller-43565
05/22/2025, 12:06 PMancient-car-96302
05/22/2025, 12:11 PMforcedFeatures variable is private again. I was trying to open it to mockk feature call with mockk but it is private againancient-car-96302
05/22/2025, 12:12 PMsetForcedFeatures() method is backbrave-controller-43565
05/22/2025, 12:21 PMbrave-controller-43565
05/22/2025, 12:21 PMancient-car-96302
05/22/2025, 12:23 PMancient-car-96302
05/22/2025, 12:24 PMbrave-controller-43565
05/22/2025, 12:24 PMbrave-controller-43565
05/22/2025, 12:25 PMancient-car-96302
05/22/2025, 12:29 PMbrave-controller-43565
05/22/2025, 12:32 PMbrave-controller-43565
05/22/2025, 12:33 PMancient-car-96302
05/22/2025, 12:50 PMbrave-controller-43565
05/22/2025, 12:50 PMbrave-controller-43565
05/22/2025, 12:51 PMancient-car-96302
05/22/2025, 12:53 PMancient-car-96302
05/22/2025, 12:55 PMbrave-controller-43565
05/22/2025, 12:56 PMgetExperimentResult object before
that is calledbrave-controller-43565
05/22/2025, 12:57 PMbrave-controller-43565
05/22/2025, 12:57 PMancient-car-96302
05/22/2025, 1:03 PMbrave-controller-43565
05/22/2025, 1:04 PMbrave-controller-43565
05/22/2025, 1:04 PMancient-car-96302
05/22/2025, 1:05 PMancient-car-96302
05/22/2025, 1:05 PMbrave-controller-43565
05/22/2025, 1:06 PMbrave-controller-43565
05/22/2025, 1:06 PMancient-car-96302
05/22/2025, 1:13 PMbrave-controller-43565
05/22/2025, 1:14 PMbrave-controller-43565
05/22/2025, 1:15 PMancient-car-96302
05/22/2025, 1:15 PMbrave-controller-43565
05/22/2025, 1:15 PM