summaryrefslogtreecommitdiffstats
path: root/controller-server
diff options
context:
space:
mode:
authorOla Aunrønning <olaa@verizonmedia.com>2021-03-22 18:32:39 +0100
committerOla Aunrønning <olaa@verizonmedia.com>2021-03-22 18:32:39 +0100
commita085be5db58dfae97846ab2d9787fe5d4aec4f71 (patch)
tree5e32268421426ecd781577d5668a1782cad9c274 /controller-server
parentbccb8aab434999bfb1ea96dafaa2ddfc05d7482d (diff)
Fix test
Diffstat (limited to 'controller-server')
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ChangeManagementAssessorTest.java30
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/ChangeManagementApiHandlerTest.java25
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/responses/initial.json2
3 files changed, 32 insertions, 25 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ChangeManagementAssessorTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ChangeManagementAssessorTest.java
index a6724d11017..575a38cd637 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ChangeManagementAssessorTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/ChangeManagementAssessorTest.java
@@ -121,18 +121,29 @@ public class ChangeManagementAssessorTest {
}
@Test
- public void config_and_proxy_hosts() {
+ public void two_config_nodes() {
var zone = ZoneId.from("prod", "eu-trd");
- var hostNames = Arrays.asList("config1", "config2", "routing1");
+ var hostNames = Arrays.asList("config1", "config2");
var allNodesInZone = new ArrayList<NodeRepositoryNode>();
-
// Add config nodes and parents
allNodesInZone.add(createNode("config1", "confighost1", "config", 0, NodeType.config));
allNodesInZone.add(createHost("confighost1", NodeType.confighost));
allNodesInZone.add(createNode("config2", "confighost2", "config", 0, NodeType.config));
allNodesInZone.add(createHost("confighost2", NodeType.confighost));
+ var assessment = changeManagementAssessor.assessmentInner(hostNames, allNodesInZone, zone).getClusterAssessments();
+ var configAssessment = assessment.get(0);
+ assertEquals("Large impact. Consider reprovisioning one or more config servers", configAssessment.impact);
+ assertEquals(2, configAssessment.clusterImpact);
+ }
+
+ @Test
+ public void one_of_three_proxy_nodes() {
+ var zone = ZoneId.from("prod", "eu-trd");
+ var hostNames = Arrays.asList("routing1");
+ var allNodesInZone = new ArrayList<NodeRepositoryNode>();
+
// Add routing nodes and parents
allNodesInZone.add(createNode("routing1", "parentrouting1", "routing", 0, NodeType.proxy));
allNodesInZone.add(createHost("parentrouting1", NodeType.proxyhost));
@@ -141,17 +152,8 @@ public class ChangeManagementAssessorTest {
allNodesInZone.add(createNode("routing3", "parentrouting3", "routing", 0, NodeType.proxy));
allNodesInZone.add(createHost("parentrouting3", NodeType.proxyhost));
- var assessment = changeManagementAssessor.assessmentInner(hostNames, allNodesInZone, zone);
-
- var clusterAssessments = assessment.getClusterAssessments();
- assertEquals(2, clusterAssessments.size());
-
- var configAssessment = clusterAssessments.get(0);
- assertEquals("Large impact. Consider reprovisioning one or more config servers", configAssessment.impact);
- assertEquals(2, configAssessment.clusterImpact);
-
- var routingAssessment = clusterAssessments.get(1);
- assertEquals("33% of routing nodes impacted. Consider reprovisioning if too many", routingAssessment.impact);
+ var assessment = changeManagementAssessor.assessmentInner(hostNames, allNodesInZone, zone).getClusterAssessments();
+ assertEquals("33% of routing nodes impacted. Consider reprovisioning if too many", assessment.get(0).impact);
}
private NodeOwner createOwner() {
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/ChangeManagementApiHandlerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/ChangeManagementApiHandlerTest.java
index 359f34f5740..2f2e70e2cf6 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/ChangeManagementApiHandlerTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/ChangeManagementApiHandlerTest.java
@@ -9,6 +9,7 @@ import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeMemb
import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeOwner;
import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeRepositoryNode;
import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeState;
+import com.yahoo.vespa.hosted.controller.api.integration.noderepository.NodeType;
import com.yahoo.vespa.hosted.controller.restapi.ContainerTester;
import com.yahoo.vespa.hosted.controller.restapi.ControllerContainerTest;
import org.intellij.lang.annotations.Language;
@@ -50,20 +51,20 @@ public class ChangeManagementApiHandlerTest extends ControllerContainerTest {
private List<NodeRepositoryNode> createNodes() {
List<NodeRepositoryNode> nodes = new ArrayList<>();
- nodes.add(createNode("node1", "host1", "myapp", "default", 0 ));
- nodes.add(createNode("node2", "host1", "myapp", "default", 0 ));
- nodes.add(createNode("node3", "host1", "myapp", "default", 0 ));
- nodes.add(createNode("node4", "host2", "myapp", "default", 0 ));
+ nodes.add(createNode("node1", "host1", "default", 0 ));
+ nodes.add(createNode("node2", "host1", "default", 0 ));
+ nodes.add(createNode("node3", "host1", "default", 0 ));
+ nodes.add(createNode("node4", "host2", "default", 0 ));
nodes.add(createHost("host1", "switch1"));
nodes.add(createHost("host2", "switch2"));
return nodes;
}
- private NodeOwner createOwner(String tenant, String application, String instance) {
+ private NodeOwner createOwner() {
NodeOwner owner = new NodeOwner();
- owner.tenant = tenant;
- owner.application = application;
- owner.instance = instance;
+ owner.tenant = "mytenant";
+ owner.application = "myapp";
+ owner.instance = "default";
return owner;
}
@@ -77,13 +78,14 @@ public class ChangeManagementApiHandlerTest extends ControllerContainerTest {
return membership;
}
- private NodeRepositoryNode createNode(String nodename, String hostname, String appName, String clusterId, int group) {
+ private NodeRepositoryNode createNode(String nodename, String hostname, String clusterId, int group) {
NodeRepositoryNode node = new NodeRepositoryNode();
node.setHostname(nodename);
node.setParentHostname(hostname);
node.setState(NodeState.active);
- node.setOwner(createOwner("mytenant", appName, "default"));
+ node.setOwner(createOwner());
node.setMembership(createMembership(clusterId, group));
+ node.setType(NodeType.tenant);
return node;
}
@@ -92,6 +94,9 @@ public class ChangeManagementApiHandlerTest extends ControllerContainerTest {
NodeRepositoryNode node = new NodeRepositoryNode();
node.setHostname(hostname);
node.setSwitchHostname(switchName);
+ node.setOwner(createOwner());
+ node.setType(NodeType.host);
+ node.setMembership(createMembership("host", 0));
return node;
}
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/responses/initial.json b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/responses/initial.json
index cfe98ab906b..cf349e06cff 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/responses/initial.json
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/restapi/changemanagement/responses/initial.json
@@ -12,7 +12,7 @@
"groupsImpact": 1,
"upgradePolicy": "na",
"suggestedAction": "nothing",
- "impact": "na"
+ "impact": "Impact larger than upgrade policy"
}
],
"hosts": [