diff options
author | Jon Bratseth <bratseth@yahoo-inc.com> | 2017-04-18 15:53:19 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@yahoo-inc.com> | 2017-04-18 15:53:19 +0200 |
commit | 352b828e91711ab1384213ad7f741d423688eeca (patch) | |
tree | 55094ccb785eeca6156f8445cd45a1c5e868bbba /configserver/src/test/java | |
parent | 76497a12e6ec76d82527b2bd2fbe3de8bba6eb63 (diff) | |
parent | bd5edd2681f6b0a3282cd053acb98d4b0ee126c4 (diff) |
Merge branch 'master' into bratseth/receive-wanted-version
Diffstat (limited to 'configserver/src/test/java')
5 files changed, 48 insertions, 9 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/SuperModelRequestHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/SuperModelRequestHandlerTest.java index a2b0b4e7d22..9bf86b4aa0a 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/SuperModelRequestHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/SuperModelRequestHandlerTest.java @@ -3,7 +3,9 @@ package com.yahoo.vespa.config.server; import com.yahoo.cloud.config.ConfigserverConfig; import com.yahoo.config.model.application.provider.FilesApplicationPackage; +import com.yahoo.config.provision.NodeFlavors; import com.yahoo.config.provision.Version; +import com.yahoo.config.provisioning.FlavorsConfig; import com.yahoo.vespa.config.server.application.Application; import com.yahoo.config.provision.ApplicationId; import com.yahoo.config.provision.TenantName; @@ -43,7 +45,8 @@ public class SuperModelRequestHandlerTest { counter = new SuperModelGenerationCounter(new MockCurator()); controller = new SuperModelRequestHandler(counter, new TestConfigDefinitionRepo(), - new ConfigserverConfig(new ConfigserverConfig.Builder())); + new ConfigserverConfig(new ConfigserverConfig.Builder()), + emptyNodeFlavors()); } @Test @@ -94,7 +97,8 @@ public class SuperModelRequestHandlerTest { long masterGen = 10; controller = new SuperModelRequestHandler(counter, new TestConfigDefinitionRepo(), - new ConfigserverConfig(new ConfigserverConfig.Builder().masterGeneration(masterGen))); + new ConfigserverConfig(new ConfigserverConfig.Builder().masterGeneration(masterGen)), + emptyNodeFlavors()); long gen = counter.increment(); controller.reloadConfig(tenantA, createApp(tenantA, "foo", 3L, 1)); @@ -127,4 +131,8 @@ public class SuperModelRequestHandlerTest { } } + public static NodeFlavors emptyNodeFlavors() { + return new NodeFlavors(new FlavorsConfig(new FlavorsConfig.Builder())); + } + } diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java b/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java index efd8b2f843b..87f94fc4d1d 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/TestComponentRegistry.java @@ -26,6 +26,8 @@ import com.yahoo.vespa.model.VespaModelFactory; import java.util.Collections; import java.util.Optional; +import static com.yahoo.vespa.config.server.SuperModelRequestHandlerTest.emptyNodeFlavors; + /** * @author lulf * @since 5.1 @@ -141,7 +143,8 @@ public class TestComponentRegistry implements GlobalComponentRegistry { HostProvisionerProvider.empty(); SessionPreparer sessionPreparer = new SessionPreparer(modelFactoryRegistry, fileDistributionFactory, hostProvisionerProvider, permApp, - configserverConfig, defRepo, curator, new Zone(configserverConfig)); + configserverConfig, defRepo, curator, + new Zone(configserverConfig, emptyNodeFlavors())); return new TestComponentRegistry(curator, configCurator.orElse(ConfigCurator.create(curator)), metrics, modelFactoryRegistry, permApp, diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/rpc/TestWithRpc.java b/configserver/src/test/java/com/yahoo/vespa/config/server/rpc/TestWithRpc.java index 8f1754357b2..df1bb7f4f62 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/rpc/TestWithRpc.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/rpc/TestWithRpc.java @@ -27,6 +27,7 @@ import java.time.Instant; import java.util.ArrayList; import java.util.List; +import static com.yahoo.vespa.config.server.SuperModelRequestHandlerTest.emptyNodeFlavors; import static org.hamcrest.CoreMatchers.is; import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertFalse; @@ -84,7 +85,8 @@ public class TestWithRpc { rpcServer = new RpcServer(new ConfigserverConfig(new ConfigserverConfig.Builder().rpcport(port).numthreads(1).maxgetconfigclients(1).hostedVespa(hostedVespa)), new SuperModelRequestHandler(generationCounter, new TestConfigDefinitionRepo(), - new ConfigserverConfig(new ConfigserverConfig.Builder())), + new ConfigserverConfig(new ConfigserverConfig.Builder()), + emptyNodeFlavors()), Metrics.createTestMetrics(), new HostRegistries(), hostLivenessTracker); rpcServer.onTenantCreate(TenantName.from("default"), tenantProvider); diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandlerTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandlerTest.java index fc0dc52dc01..bd8c764353f 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandlerTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/tenant/TenantRequestHandlerTest.java @@ -85,7 +85,10 @@ public class TenantRequestHandlerTest extends TestWithCurator { } private void feedApp(File appDir, long sessionId, ApplicationId appId) throws IOException { - SessionZooKeeperClient zkc = new SessionZooKeeperClient(curator, configCurator, new PathProvider(Path.createRoot()).getSessionDir(sessionId), new TestConfigDefinitionRepo(), ""); + SessionZooKeeperClient zkc = new SessionZooKeeperClient(curator, configCurator, + new PathProvider(Path.createRoot()).getSessionDir(sessionId), + new TestConfigDefinitionRepo(), + "", Optional.empty()); zkc.writeApplicationId(appId); File app = tempFolder.newFolder(); IOUtils.copyDirectory(appDir, app); @@ -98,7 +101,10 @@ public class TenantRequestHandlerTest extends TestWithCurator { } private ApplicationSet reloadConfig(long id, String application) { - SessionZooKeeperClient zkc = new SessionZooKeeperClient(curator, configCurator, new PathProvider(Path.createRoot()).getSessionDir(id), new TestConfigDefinitionRepo(), ""); + SessionZooKeeperClient zkc = new SessionZooKeeperClient(curator, configCurator, + new PathProvider(Path.createRoot()).getSessionDir(id), + new TestConfigDefinitionRepo(), + "", Optional.empty()); zkc.writeApplicationId(new ApplicationId.Builder().tenant(tenant).applicationName(application).build()); RemoteSession session = new RemoteSession(tenant, id, componentRegistry, zkc); return session.ensureApplicationLoaded(); @@ -176,7 +182,10 @@ public class TenantRequestHandlerTest extends TestWithCurator { @Test public void testResolveForAppId() { long id = 1l; - SessionZooKeeperClient zkc = new SessionZooKeeperClient(curator, configCurator, new PathProvider(Path.createRoot()).getSessionDir(id), new TestConfigDefinitionRepo(), ""); + SessionZooKeeperClient zkc = new SessionZooKeeperClient(curator, configCurator, + new PathProvider(Path.createRoot()).getSessionDir(id), + new TestConfigDefinitionRepo(), + "", Optional.empty()); ApplicationId appId = new ApplicationId.Builder() .tenant(tenant) .applicationName("myapp").instanceName("myinst").build(); diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java index 217e2a04f9b..f6b00aa7e88 100644 --- a/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java +++ b/configserver/src/test/java/com/yahoo/vespa/config/server/zookeeper/ZKApplicationPackageTest.java @@ -8,13 +8,17 @@ import java.io.File; import java.io.IOException; import java.io.Reader; import java.util.Collections; +import java.util.Optional; import java.util.regex.Pattern; import com.yahoo.config.application.api.DeploymentSpec; import com.yahoo.config.model.deploy.DeployState; +import com.yahoo.config.provision.Flavor; import com.yahoo.config.provision.HostSpec; +import com.yahoo.config.provision.NodeFlavors; import com.yahoo.config.provision.ProvisionInfo; import com.yahoo.config.provision.Version; +import com.yahoo.config.provisioning.FlavorsConfig; import com.yahoo.path.Path; import com.yahoo.text.Utf8; import com.yahoo.vespa.config.server.TestWithCurator; @@ -27,8 +31,10 @@ import com.yahoo.io.IOUtils; public class ZKApplicationPackageTest extends TestWithCurator { private static final String APP = "src/test/apps/zkapp"; + private static final String TEST_FLAVOR_NAME = "test-flavor"; + private static final Optional<Flavor> TEST_FLAVOR = new MockNodeFlavors().getFlavor(TEST_FLAVOR_NAME); private static final ProvisionInfo provisionInfo = ProvisionInfo.withHosts( - Collections.singleton(new HostSpec("foo.yahoo.com", Collections.emptyList()))); + Collections.singleton(new HostSpec("foo.yahoo.com", Collections.emptyList(), TEST_FLAVOR, Optional.empty()))); @Rule public TemporaryFolder tmpDir = new TemporaryFolder(); @@ -36,7 +42,7 @@ public class ZKApplicationPackageTest extends TestWithCurator { @Test public void testBasicZKFeed() throws IOException { feed(configCurator, new File(APP)); - ZKApplicationPackage zkApp = new ZKApplicationPackage(configCurator, Path.fromString("/0")); + ZKApplicationPackage zkApp = new ZKApplicationPackage(configCurator, Path.fromString("/0"), Optional.of(new MockNodeFlavors())); assertTrue(Pattern.compile(".*<slobroks>.*",Pattern.MULTILINE+Pattern.DOTALL).matcher(IOUtils.readAll(zkApp.getServices())).matches()); assertTrue(Pattern.compile(".*<alias>.*",Pattern.MULTILINE+Pattern.DOTALL).matcher(IOUtils.readAll(zkApp.getHosts())).matches()); assertTrue(Pattern.compile(".*<slobroks>.*",Pattern.MULTILINE+Pattern.DOTALL).matcher(IOUtils.readAll(zkApp.getFile(Path.fromString("services.xml")).createReader())).matches()); @@ -61,6 +67,7 @@ public class ZKApplicationPackageTest extends TestWithCurator { assertTrue(zkApp.getProvisionInfoMap().containsKey(goodVersion)); ProvisionInfo readInfo = zkApp.getProvisionInfoMap().get(goodVersion); assertThat(Utf8.toString(readInfo.toJson()), is(Utf8.toString(provisionInfo.toJson()))); + assertThat(readInfo.getHosts().iterator().next().flavor(), is(TEST_FLAVOR)); assertTrue(zkApp.getDeployment().isPresent()); assertThat(DeploymentSpec.fromXml(zkApp.getDeployment().get()).globalServiceId().get(), is("mydisc")); } @@ -74,4 +81,14 @@ public class ZKApplicationPackageTest extends TestWithCurator { zk.putData("/0/" + ZKApplicationPackage.allocatedHostsNode + "/3.0.0", provisionInfo.toJson()); } + private static class MockNodeFlavors extends NodeFlavors{ + + MockNodeFlavors() { super(flavorsConfig()); } + + private static FlavorsConfig flavorsConfig() { + return new FlavorsConfig(new FlavorsConfig.Builder() + .flavor(new FlavorsConfig.Flavor.Builder().name(TEST_FLAVOR_NAME)) + ); + } + } } |