Skip to content

Commit dd11622

Browse files
committed
fix: tests assertion ignore evaluationId
1 parent ea26713 commit dd11622

File tree

1 file changed

+19
-1
lines changed

1 file changed

+19
-1
lines changed

src/test/kotlin/RemoteEvaluationClientTest.kt

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,24 @@ import kotlin.test.fail
1616

1717
private const val API_KEY = "server-qz35UwzJ5akieoAdIgzM4m9MIiOLXLoz"
1818

19+
/**
20+
* To assert two variants. These fields are not consistent across evaluation, simply assert not null.
21+
* - metadata.evaluationId
22+
*/
23+
fun assertVariantEquals(
24+
expected: Variant,
25+
actual: Variant?,
26+
) {
27+
val metadata = when {
28+
expected.metadata != null -> expected.metadata?.toMutableMap()
29+
actual?.metadata != null -> mutableMapOf()
30+
else -> null
31+
}
32+
metadata?.set("evaluationId", actual?.metadata?.get("evaluationId"))
33+
val matchedVariant = Variant(expected.value, expected.payload, expected.key, metadata)
34+
Assert.assertEquals(matchedVariant, actual)
35+
}
36+
1937
class RemoteEvaluationClientTest {
2038

2139
init {
@@ -40,7 +58,7 @@ class RemoteEvaluationClientTest {
4058
println(dur)
4159
Assert.assertNotNull(variants)
4260
val variant = variants[testFlagKey]
43-
Assert.assertEquals(testVariant, variant)
61+
assertVariantEquals(testVariant, variant)
4462
}
4563

4664
@Test

0 commit comments

Comments
 (0)