summaryrefslogtreecommitdiffstats
path: root/config-application-package/src/test/java/com/yahoo
diff options
context:
space:
mode:
authorHarald Musum <musum@yahoo-inc.com>2017-01-26 12:44:22 +0100
committerHarald Musum <musum@yahoo-inc.com>2017-01-26 12:44:22 +0100
commit3412a4094942b9fe9237261762d3c2f4e2d919db (patch)
tree27486d14b20e3e6b9839690bec738748737cac35 /config-application-package/src/test/java/com/yahoo
parent1b7b90e5e67d2e3e23173540e4faf9f437a19855 (diff)
Handle overrides correctly
* Make sure to process all elements before deciding which to retain
Diffstat (limited to 'config-application-package/src/test/java/com/yahoo')
-rw-r--r--config-application-package/src/test/java/com/yahoo/config/application/HostedOverrideProcessorTest.java50
1 files changed, 38 insertions, 12 deletions
diff --git a/config-application-package/src/test/java/com/yahoo/config/application/HostedOverrideProcessorTest.java b/config-application-package/src/test/java/com/yahoo/config/application/HostedOverrideProcessorTest.java
index 338302e9e57..50ec8062e27 100644
--- a/config-application-package/src/test/java/com/yahoo/config/application/HostedOverrideProcessorTest.java
+++ b/config-application-package/src/test/java/com/yahoo/config/application/HostedOverrideProcessorTest.java
@@ -24,15 +24,17 @@ public class HostedOverrideProcessorTest {
}
private static final String input =
- "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>" +
- "<services xmlns:deploy=\"vespa\" xmlns:preprocess=\"?\" version=\"1.0\">" +
- " <container id=\"foo\" version=\"1.0\">" +
- " <nodes count='1'/>" +
- " <nodes deploy:environment=\"staging\" count='2'/>" +
- " <nodes deploy:environment=\"prod\" count='3'/>" +
- " <nodes deploy:environment=\"prod\" deploy:region=\"us-west\" count='4'/>" +
- " </container>" +
- "</services>";
+ "<?xml version='1.0' encoding='UTF-8' standalone='no'?>" +
+ "<services xmlns:deploy='vespa' xmlns:preprocess='?' version='1.0'>" +
+ " <container id='foo' version='1.0'>" +
+ " <nodes count='1'/>" +
+ " <nodes count='3' deploy:environment='perf'/>" +
+ " <nodes deploy:environment='staging' count='2' required='true'/>" +
+ " <nodes deploy:environment='prod' count='3' flavor='v-4-8-100'/>" +
+ " <nodes deploy:environment='prod' deploy:region='us-west' count='4'/>" +
+ " <nodes deploy:environment='prod' deploy:region='us-east-3' flavor='v-8-8-100' count='5'/>" +
+ " </container>" +
+ "</services>";
@Test
@@ -60,15 +62,39 @@ public class HostedOverrideProcessorTest {
}
@Test
+ public void testParsingEnvironmentAndRegion2() throws ParserConfigurationException, IOException, SAXException, TransformerException {
+ String expected =
+ "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>" +
+ "<services xmlns:deploy=\"vespa\" xmlns:preprocess=\"?\" version=\"1.0\">" +
+ " <container id=\"foo\" version=\"1.0\">" +
+ " <nodes count='5' flavor='v-8-8-100' required='true'/>" +
+ " </container>" +
+ "</services>";
+ assertOverride(Environment.from("prod"), RegionName.from("us-east-3"), expected);
+ }
+
+ @Test
+ public void testParsingEnvironmentAndRegion3() throws ParserConfigurationException, IOException, SAXException, TransformerException {
+ String expected =
+ "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>" +
+ "<services xmlns:deploy=\"vespa\" xmlns:preprocess=\"?\" version=\"1.0\">" +
+ " <container id=\"foo\" version=\"1.0\">" +
+ " <nodes count='3' required='true'/>" +
+ " </container>" +
+ "</services>";
+ assertOverride(Environment.from("perf"), RegionName.from("us-east-3"), expected);
+ }
+
+ @Test
public void testParsingEnvironmentUnknownRegion() throws ParserConfigurationException, IOException, SAXException, TransformerException {
String expected =
"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>" +
"<services xmlns:deploy=\"vespa\" xmlns:preprocess=\"?\" version=\"1.0\">" +
" <container id=\"foo\" version=\"1.0\">" +
- " <nodes count='3' required='true'/>" +
+ " <nodes count='3' flavor='v-4-8-100' required='true'/>" +
" </container>" +
"</services>";
- assertOverride(Environment.valueOf("prod"), RegionName.from("us-east"), expected);
+ assertOverride(Environment.valueOf("prod"), RegionName.from("unknown"), expected);
}
@Test
@@ -77,7 +103,7 @@ public class HostedOverrideProcessorTest {
"<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?>" +
"<services xmlns:deploy=\"vespa\" xmlns:preprocess=\"?\" version=\"1.0\">" +
" <container id=\"foo\" version=\"1.0\">" +
- " <nodes count='3' required='true'/>" +
+ " <nodes count='3' flavor='v-4-8-100' required='true'/>" +
" </container>" +
"</services>";
assertOverride(Environment.from("prod"), RegionName.defaultName(), expected);