aboutsummaryrefslogtreecommitdiffstats
path: root/controller-server/src/test/java
diff options
context:
space:
mode:
authorJon Marius Venstad <jvenstad@yahoo-inc.com>2019-05-14 13:10:33 +0200
committerJon Marius Venstad <jvenstad@yahoo-inc.com>2019-05-14 13:10:33 +0200
commit29963c7368aa6d8bbc4cdbf682752dcef50495fe (patch)
tree2d6b7ed8796984c3e0a571f64cd72089c8a0c2aa /controller-server/src/test/java
parentd894d32f14e90d3ad3b35700c667107df1cfca6c (diff)
Check for roulting policies in InternalStepRunner
Diffstat (limited to 'controller-server/src/test/java')
-rw-r--r--controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java31
1 files changed, 30 insertions, 1 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java
index 02a4bfcdbe6..40f59dc146f 100644
--- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java
+++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/InternalStepRunnerTest.java
@@ -3,6 +3,7 @@ package com.yahoo.vespa.hosted.controller.deployment;
import com.yahoo.component.Version;
import com.yahoo.config.application.api.DeploymentSpec;
+import com.yahoo.config.provision.ClusterSpec;
import com.yahoo.config.provision.HostName;
import com.yahoo.config.provision.SystemName;
import com.yahoo.config.provision.zone.ZoneId;
@@ -18,9 +19,9 @@ import com.yahoo.vespa.hosted.controller.api.integration.LogEntry;
import com.yahoo.vespa.hosted.controller.api.integration.deployment.JobType;
import com.yahoo.vespa.hosted.controller.api.integration.deployment.RunId;
import com.yahoo.vespa.hosted.controller.api.integration.deployment.TesterCloud;
-import com.yahoo.vespa.hosted.controller.api.integration.routing.RoutingEndpoint;
import com.yahoo.vespa.hosted.controller.api.integration.stubs.MockMailer;
import com.yahoo.vespa.hosted.controller.application.ApplicationPackage;
+import com.yahoo.vespa.hosted.controller.application.RoutingPolicy;
import org.junit.Before;
import org.junit.Test;
@@ -34,6 +35,7 @@ import java.time.Duration;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
+import java.util.Set;
import java.util.concurrent.Executors;
import java.util.concurrent.Future;
@@ -47,6 +49,7 @@ import static com.yahoo.vespa.hosted.controller.deployment.InternalDeploymentTes
import static com.yahoo.vespa.hosted.controller.deployment.Step.Status.failed;
import static com.yahoo.vespa.hosted.controller.deployment.Step.Status.succeeded;
import static com.yahoo.vespa.hosted.controller.deployment.Step.Status.unfinished;
+import static java.util.Collections.emptySet;
import static java.util.Collections.singletonList;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertTrue;
@@ -206,6 +209,32 @@ public class InternalStepRunnerTest {
}
@Test
+ public void alternativeEndpointsAreDetected() {
+ tester.newRun(JobType.systemTest);
+ tester.runner().run();;
+ tester.configServer().convergeServices(appId, JobType.systemTest.zone(tester.tester().controller().system()));
+ tester.configServer().convergeServices(testerId.id(), JobType.systemTest.zone(tester.tester().controller().system()));
+ assertEquals(unfinished, tester.jobs().last(appId, JobType.systemTest).get().steps().get(Step.installReal));
+ assertEquals(unfinished, tester.jobs().last(appId, JobType.systemTest).get().steps().get(Step.installTester));
+
+ tester.tester().controller().curator().writeRoutingPolicies(appId, Set.of(new RoutingPolicy(appId,
+ ClusterSpec.Id.from("default"),
+ JobType.systemTest.zone(tester.tester().controller().system()),
+ HostName.from("host"),
+ Optional.empty(),
+ emptySet())));
+ tester.tester().controller().curator().writeRoutingPolicies(testerId.id(), Set.of(new RoutingPolicy(testerId.id(),
+ ClusterSpec.Id.from("default"),
+ JobType.systemTest.zone(tester.tester().controller().system()),
+ HostName.from("host"),
+ Optional.empty(),
+ emptySet())));
+ tester.runner().run();;
+ assertEquals(succeeded, tester.jobs().last(appId, JobType.systemTest).get().steps().get(Step.installReal));
+ assertEquals(succeeded, tester.jobs().last(appId, JobType.systemTest).get().steps().get(Step.installTester));
+ }
+
+ @Test
public void testsFailIfTesterRestarts() {
RunId id = tester.startSystemTestTests();
tester.cloud().set(TesterCloud.Status.NOT_STARTED);