summaryrefslogtreecommitdiffstats
path: root/hosted-api
diff options
context:
space:
mode:
authorJon Marius Venstad <jvenstad@yahoo-inc.com>2019-06-14 12:43:43 +0200
committerJon Marius Venstad <jvenstad@yahoo-inc.com>2019-06-14 13:56:53 +0200
commitbd2cd6f6e6f9b9c6f0a82907a9bd4e0c6f62ee68 (patch)
treea14a55b2c87cc047b9585eff01dca654d0cb4485 /hosted-api
parente40581bc4c1a6470989061c5a10608470e8abfb3 (diff)
Use correct field name when deserialising test config
Diffstat (limited to 'hosted-api')
-rw-r--r--hosted-api/src/main/java/ai/vespa/hosted/api/TestConfig.java2
-rw-r--r--hosted-api/src/test/java/ai/vespa/hosted/api/TestConfigTest.java37
-rw-r--r--hosted-api/src/test/resources/test-config.json13
3 files changed, 51 insertions, 1 deletions
diff --git a/hosted-api/src/main/java/ai/vespa/hosted/api/TestConfig.java b/hosted-api/src/main/java/ai/vespa/hosted/api/TestConfig.java
index 897b5d3236d..015d5702c59 100644
--- a/hosted-api/src/main/java/ai/vespa/hosted/api/TestConfig.java
+++ b/hosted-api/src/main/java/ai/vespa/hosted/api/TestConfig.java
@@ -44,7 +44,7 @@ public class TestConfig {
ZoneId zone = ZoneId.from(config.field("zone").asString());
SystemName system = SystemName.from(config.field("system").asString());
Map<ZoneId, Map<String, URI>> deployments = new HashMap<>();
- config.field("clusterEndpoints").traverse((ObjectTraverser) (zoneId, endpointsObject) -> {
+ config.field("zoneEndpoints").traverse((ObjectTraverser) (zoneId, endpointsObject) -> {
Map<String, URI> endpoints = new HashMap<>();
endpointsObject.traverse((ObjectTraverser) (cluster, uri) -> endpoints.put(cluster, URI.create(uri.asString())));
deployments.put(ZoneId.from(zoneId), endpoints);
diff --git a/hosted-api/src/test/java/ai/vespa/hosted/api/TestConfigTest.java b/hosted-api/src/test/java/ai/vespa/hosted/api/TestConfigTest.java
new file mode 100644
index 00000000000..51fb7a8cf4a
--- /dev/null
+++ b/hosted-api/src/test/java/ai/vespa/hosted/api/TestConfigTest.java
@@ -0,0 +1,37 @@
+package ai.vespa.hosted.api;
+
+import com.yahoo.config.provision.ApplicationId;
+import com.yahoo.config.provision.SystemName;
+import com.yahoo.config.provision.zone.ZoneId;
+import org.junit.Test;
+
+import java.io.IOException;
+import java.net.URI;
+import java.nio.file.Files;
+import java.nio.file.Paths;
+import java.util.Map;
+
+import static org.junit.Assert.assertEquals;
+
+/**
+ * @author jonmv
+ */
+public class TestConfigTest {
+
+ @Test
+ public void testDeserialization() throws IOException {
+ TestConfig config = TestConfig.fromJson(Files.readAllBytes(Paths.get("src/test/resources/test-config.json")));
+ assertEquals(ApplicationId.from("t", "a", "i"),
+ config.application());
+ assertEquals(ZoneId.from("dev", "aws-us-east-1c"),
+ config.zone());
+ assertEquals(SystemName.PublicCd,
+ config.system());
+ assertEquals(Map.of(ZoneId.from("dev", "aws-us-east-1c"),
+ Map.of("default", URI.create("https://dev.endpoint:443/")),
+ ZoneId.from("prod", "aws-us-east-1a"),
+ Map.of("default", URI.create("https://prod.endpoint:443/"))),
+ config.deployments());
+ }
+
+}
diff --git a/hosted-api/src/test/resources/test-config.json b/hosted-api/src/test/resources/test-config.json
new file mode 100644
index 00000000000..9d36f9496a0
--- /dev/null
+++ b/hosted-api/src/test/resources/test-config.json
@@ -0,0 +1,13 @@
+{
+ "application": "t:a:i",
+ "zone": "dev.aws-us-east-1c",
+ "system": "publiccd",
+ "zoneEndpoints": {
+ "dev.aws-us-east-1c": {
+ "default": "https://dev.endpoint:443/"
+ },
+ "prod.aws-us-east-1a": {
+ "default": "https://prod.endpoint:443/"
+ }
+ }
+}