package com.netflix.fabricator.archaius; import java.util.Map; import java.util.Properties; import org.junit.Assert; import org.junit.Test; import com.netflix.config.ConfigurationManager; import com.netflix.fabricator.ConfigurationNode; public class ArchaiusTypeConfigurationResolverTest { @Test public void testReadAll() { Properties properties = new Properties(); properties.put("id1.sometype.a", "_a1"); properties.put("id2.sometype", "{\"type\":\"_type\",\"a\":\"_a2\"}"); properties.put("id3.sometype", "{\"type\":\"_type\",\"a\":\"_a3\"}"); System.out.println(properties); properties.put("id1.someothertype.a", "_a"); ConfigurationManager.loadProperties(properties); ArchaiusTypeConfigurationResolver resolver = new ArchaiusTypeConfigurationResolver(null); Map<String, ConfigurationNode> someTypeConfigs = resolver.getConfigurationFactory("sometype").getAllConfigurations(); Assert.assertEquals(3, someTypeConfigs.keySet().size()); Assert.assertEquals("_a1", someTypeConfigs.get("id1").getChild("a").getValue(String.class)); Assert.assertEquals("_a2", someTypeConfigs.get("id2").getChild("a").getValue(String.class)); Assert.assertEquals("_a3", someTypeConfigs.get("id3").getChild("a").getValue(String.class)); Map<String, ConfigurationNode> someOtherTypeConfigs = resolver.getConfigurationFactory("someothertype").getAllConfigurations(); Assert.assertEquals(1, someOtherTypeConfigs.keySet().size()); Assert.assertEquals("_a", someOtherTypeConfigs.get("id1").getChild("a").getValue(String.class)); } }