summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@gmail.com>2020-04-29 16:16:55 +0200
committerJon Bratseth <bratseth@gmail.com>2020-04-29 16:16:55 +0200
commiteb9f0add11504d49151b005ee03cd80e1369ec8b (patch)
tree6b4d2175572b029f74791977b666bb55aecdcc6f /node-repository
parentc9299a2514a30744a93f9874665b7a9da7070d26 (diff)
Test with resources calculator
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java35
1 files changed, 27 insertions, 8 deletions
diff --git a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java
index a4976cf3889..685a28f7b8d 100644
--- a/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java
+++ b/node-repository/src/test/java/com/yahoo/vespa/hosted/provision/provisioning/DynamicDockerProvisionTest.java
@@ -162,6 +162,7 @@ public class DynamicDockerProvisionTest {
.hostProvisioner(hostProvisioner)
.flagSource(flagSource)
.nameResolver(nameResolver)
+ .resourcesCalculator(new MockResourcesCalculator())
.build();
tester.deployZoneApp();
@@ -169,14 +170,8 @@ public class DynamicDockerProvisionTest {
ApplicationId app1 = tester.makeApplicationId("app1");
ClusterSpec cluster1 = ClusterSpec.request(ClusterSpec.Type.content, new ClusterSpec.Id("cluster1")).vespaVersion("7").build();
- // Initial deployment
- tester.activate(app1, cluster1, Capacity.from(resources(4, 2, 0.5, 5, 20),
- resources(6, 3, 4, 20, 40)));
- tester.assertNodes("Initial allocation at first actual flavor above min (except for disk)",
- 4, 2, 1, 10, 20,
- app1, cluster1);
-
- try { // Limits where each number are within flavor limits but but which don't contain any flavor leads to an error
+ // Limits where each number are within flavor limits but but which don't contain any flavor leads to an error
+ try {
tester.activate(app1, cluster1, Capacity.from(resources(8, 4, 3.8, 20, 40),
resources(10, 5, 5, 25, 50)));
fail("Expected exception");
@@ -185,6 +180,14 @@ public class DynamicDockerProvisionTest {
// success
}
+ // Initial deployment
+ tester.activate(app1, cluster1, Capacity.from(resources(4, 2, 0.5, 5, 20),
+ resources(6, 3, 4, 20, 40)));
+ tester.assertNodes("Initial allocation at first actual flavor above min (except for disk)",
+ 4, 2, 1, 10, 20,
+ app1, cluster1);
+
+
// Move window above current allocation
tester.activate(app1, cluster1, Capacity.from(resources(8, 4, 3.8, 20, 40),
resources(10, 5, 5, 45, 50)));
@@ -241,4 +244,20 @@ public class DynamicDockerProvisionTest {
}).when(hostProvisioner).provisionHosts(any(), any(), any());
}
+ private static class MockResourcesCalculator implements HostResourcesCalculator {
+
+ @Override
+ public NodeResources realResourcesOf(Node node) {
+ if (node.type() == NodeType.host) return node.flavor().resources();
+ return node.flavor().resources().withMemoryGb(node.flavor().resources().memoryGb() - 3);
+ }
+
+ @Override
+ public NodeResources advertisedResourcesOf(Flavor flavor) {
+ if (flavor.isConfigured()) return flavor.resources();
+ return flavor.resources().withMemoryGb(flavor.resources().memoryGb() + 3);
+ }
+
+ }
+
}