// Copyright Vespa.ai. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.config.application; import com.yahoo.config.provision.Environment; import com.yahoo.config.provision.InstanceName; import com.yahoo.config.provision.RegionName; import com.yahoo.config.provision.Tags; import org.junit.Test; import org.w3c.dom.Document; import javax.xml.transform.TransformerException; import java.io.StringReader; /** * @author bratseth */ public class HostedOverrideProcessorTagsTest { private static final String input = "" + "" + " " + " " + " " + " " + " " + " " + " " + ""; @Test public void testParsingTagAPerf() throws TransformerException { String expected = "" + "" + " " + " " + " " + ""; assertOverride(InstanceName.defaultName(), Environment.perf, RegionName.defaultName(), Tags.fromString("a"), expected); } @Test public void testParsingTagAProd() throws TransformerException { String expected = "" + "" + " " + " " + " " + ""; assertOverride(InstanceName.defaultName(), Environment.prod, RegionName.defaultName(), Tags.fromString("a"), expected); } @Test public void testParsingTagB() throws TransformerException { String expected = "" + "" + " " + " " + " " + " " + ""; assertOverride(InstanceName.defaultName(), Environment.prod, RegionName.defaultName(), Tags.fromString("b"), expected); } @Test public void testParsingTagC() throws TransformerException { String expected = "" + "" + " " + " " + " " + ""; assertOverride(InstanceName.defaultName(), Environment.prod, RegionName.defaultName(), Tags.fromString("c"), expected); } @Test public void testParsingTagCAndD() throws TransformerException { String expected = "" + "" + " " + " " + " " + " " + ""; assertOverride(InstanceName.defaultName(), Environment.prod, RegionName.defaultName(), Tags.fromString("c d"), expected); } private void assertOverride(InstanceName instance, Environment environment, RegionName region, Tags tags, String expected) throws TransformerException { Document inputDoc = Xml.getDocument(new StringReader(input)); Document newDoc = new OverrideProcessor(instance, environment, region, tags).process(inputDoc); TestBase.assertDocument(expected, newDoc); } }