package org.wildfly.swarm.container.config; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import org.junit.Test; import org.wildfly.swarm.spi.api.config.ConfigKey; import static org.fest.assertions.Assertions.assertThat; /** * @author Bob McWhirter */ public class MapConfigNodeFactoryTest { @Test public void testLoad() { Map<String,Object> input = new HashMap<String,Object>() {{ put("swarm", new HashMap<String,Object>() {{ put("port", 8080); put("enabled", true); put("things", new ArrayList<Object>() {{ add("one"); add("two"); add(new HashMap<String,Object>() {{ put("name", "three"); put("cheese", "cheddar"); put("item", 3); }}); }}); }}); }}; ConfigNode config = MapConfigNodeFactory.load(input); assertThat(config.valueOf(ConfigKey.parse("swarm.port"))).isEqualTo("8080"); assertThat(config.valueOf(ConfigKey.parse("swarm.enabled"))).isEqualTo("true"); assertThat(config.valueOf(ConfigKey.parse("swarm.things.0"))).isEqualTo("one"); assertThat(config.valueOf(ConfigKey.parse("swarm.things.1"))).isEqualTo("two"); assertThat(config.valueOf(ConfigKey.parse("swarm.things.2.name"))).isEqualTo("three"); assertThat(config.valueOf(ConfigKey.parse("swarm.things.2.cheese"))).isEqualTo("cheddar"); assertThat(config.valueOf(ConfigKey.parse("swarm.things.2.item"))).isEqualTo("3"); } }