diff options
author | Ola Aunrønning <olaa@verizonmedia.com> | 2021-03-22 18:32:39 +0100 |
---|---|---|
committer | Ola Aunrønning <olaa@verizonmedia.com> | 2021-03-22 18:32:39 +0100 |
commit | a085be5db58dfae97846ab2d9787fe5d4aec4f71 (patch) | |
tree | 5e32268421426ecd781577d5668a1782cad9c274 /controller-server | |
parent | bccb8aab434999bfb1ea96dafaa2ddfc05d7482d (diff) |
Fix test
Diffstat (limited to 'controller-server')
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": [ |