diff options
author | Jon Marius Venstad <jvenstad@yahoo-inc.com> | 2019-05-14 13:10:33 +0200 |
---|---|---|
committer | Jon Marius Venstad <jvenstad@yahoo-inc.com> | 2019-05-14 13:10:33 +0200 |
commit | 29963c7368aa6d8bbc4cdbf682752dcef50495fe (patch) | |
tree | 2d6b7ed8796984c3e0a571f64cd72089c8a0c2aa /controller-server/src/test/java | |
parent | d894d32f14e90d3ad3b35700c667107df1cfca6c (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.java | 31 |
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); |