-
Notifications
You must be signed in to change notification settings - Fork 43
/
Copy pathFlagEvaluationDetailsTest.java
48 lines (40 loc) · 1.59 KB
/
FlagEvaluationDetailsTest.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package dev.openfeature.sdk;
import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertNotNull;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
class FlagEvaluationDetailsTest {
@Test
@DisplayName("Should have empty constructor")
public void empty() {
FlagEvaluationDetails<Integer> details = new FlagEvaluationDetails<Integer>();
assertNotNull(details);
}
@Test
@DisplayName("Should have flagKey, value, variant, reason, errorCode, errorMessage, metadata constructor")
// removeing this constructor is a breaking change!
public void sevenArgConstructor() {
String flagKey = "my-flag";
Integer value = 100;
String variant = "1-hundred";
Reason reason = Reason.DEFAULT;
ErrorCode errorCode = ErrorCode.GENERAL;
String errorMessage = "message";
ImmutableMetadata metadata = ImmutableMetadata.builder().build();
FlagEvaluationDetails<Integer> details = new FlagEvaluationDetails<>(
flagKey,
value,
variant,
reason.toString(),
errorCode,
errorMessage,
metadata);
assertEquals(flagKey, details.getFlagKey());
assertEquals(value, details.getValue());
assertEquals(variant, details.getVariant());
assertEquals(reason.toString(), details.getReason());
assertEquals(errorCode, details.getErrorCode());
assertEquals(errorMessage, details.getErrorMessage());
assertEquals(metadata, details.getFlagMetadata());
}
}