Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions src/main/java/dev/openfeature/sdk/Structure.java
Original file line number Diff line number Diff line change
Expand Up @@ -80,6 +80,8 @@ default Object convertValue(Value value) {
return numberValue.doubleValue();
} else if (numberValue instanceof Integer) {
return numberValue.intValue();
} else if (numberValue instanceof Long) {
return numberValue.longValue();
}
}

Expand Down
16 changes: 16 additions & 0 deletions src/test/java/dev/openfeature/sdk/StructureTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
import lombok.SneakyThrows;
import org.junit.jupiter.api.Test;

public class StructureTest {

Check warning on line 18 in src/test/java/dev/openfeature/sdk/StructureTest.java

View check run for this annotation

SonarQubeCloud / SonarCloud Code Analysis

Remove redundant visibility modifiers from this test class and its methods.

See more on https://sonarcloud.io/project/issues?id=open-feature_java-sdk&issues=AaBDSloJpnj4ffSHlrDX&open=AaBDSloJpnj4ffSHlrDX&pullRequest=2020
@Test
public void noArgShouldContainEmptyAttributes() {
MutableStructure structure = new MutableStructure();
Expand Down Expand Up @@ -116,4 +116,20 @@
ImmutableStructure structure = new ImmutableStructure();
assertNull(structure.convertValue(new Value((String) null)));
}

@Test
void convertValueHandlesLongValue() {
long value = 4133980802L; // > Integer.MAX_VALUE
ImmutableStructure structure = new ImmutableStructure();
assertEquals(value, structure.convertValue(new Value(value)));
}

@Test
void asObjectMapHandlesLongValue() {
long value = 4133980802L;
Map<String, Value> map = new HashMap<>();
map.put("long", new Value(value));
ImmutableStructure structure = new ImmutableStructure(map);
assertEquals(value, structure.asObjectMap().get("long"));
}
}
Loading