diff options
author | Jon Bratseth <bratseth@gmail.com> | 2021-03-10 11:33:47 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@gmail.com> | 2021-03-10 11:33:47 +0100 |
commit | ecac77e9c3196a797c6f6286e71e998efc44157d (patch) | |
tree | 4b0c3d7173b65e0d481ba760713e659f19d6c0d5 /config-provisioning/src/test/java/com | |
parent | c6f821dd6cf71ac3ae9daf2009c3d61a2d82afa7 (diff) |
Validate NodeRepository numbers
Diffstat (limited to 'config-provisioning/src/test/java/com')
-rw-r--r-- | config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java | 40 |
1 files changed, 31 insertions, 9 deletions
diff --git a/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java b/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java index 044afa72a5d..18eed0deecc 100644 --- a/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java +++ b/config-provisioning/src/test/java/com/yahoo/config/provision/NodeResourcesTest.java @@ -3,7 +3,10 @@ package com.yahoo.config.provision; import org.junit.Test; +import java.util.function.Supplier; + import static org.junit.Assert.assertEquals; +import static org.junit.Assert.fail; /** * @author bratseth @@ -17,18 +20,17 @@ public class NodeResourcesTest { assertEquals("[vcpu: 0.3, memory: 3.3 Gb, disk 33.3 Gb, bandwidth: 0.3 Gbps]", new NodeResources(1/3., 10/3., 100/3., 0.3).toString()); assertEquals("[vcpu: 0.7, memory: 9.0 Gb, disk 66.7 Gb, bandwidth: 0.7 Gbps]", - new NodeResources(2/3., 8.97, 200/3., 0.67).toString()); + new NodeResources(2/3., 8.97, 200/3., 0.67).toString()); } - private long runTest(NodeResources [] resouces, int num) { - long sum = 0; - for (int i = 0; i < num; i++) { - for (NodeResources ns :resouces) { - sum += ns.toString().length(); - } - } - return sum; + @Test + public void testInvalid() { + assertInvalid("vcpu", () -> new NodeResources(Double.NaN, 1.0, 1.0, 1.0)); + assertInvalid("memory", () -> new NodeResources(1.0, Double.NaN, 1.0, 1.0)); + assertInvalid("disk", () -> new NodeResources(1.0, 1.0, Double.NaN, 1.0)); + assertInvalid("bandwith", () -> new NodeResources(1.0, 1.0, 1.0, Double.NaN)); } + @Test public void benchmark() { NodeResources [] resouces = new NodeResources[100]; @@ -44,4 +46,24 @@ public class NodeResourcesTest { assertEquals(warmup, benchmark); } + private void assertInvalid(String valueName, Supplier<NodeResources> nodeResources) { + try { + nodeResources.get(); + fail("Expected exception"); + } + catch (IllegalArgumentException e) { + assertEquals(valueName + " cannot be NaN", e.getMessage()); + } + } + + private long runTest(NodeResources [] resouces, int num) { + long sum = 0; + for (int i = 0; i < num; i++) { + for (NodeResources ns :resouces) { + sum += ns.toString().length(); + } + } + return sum; + } + } |