public void testGetValueFromCfgWithDefault() {
TestChaosMonkeyContext ctx = new TestChaosMonkeyContext("propertiesWithDefaults.properties");
BasicChaosMonkey chaos = new BasicChaosMonkey(ctx);
// named 1 has actual values in config
InstanceGroup named1 = new BasicInstanceGroup("named1", GroupTypes.TYPE_A, "test-dev-1");
// named 2 doesn't have values but it's group has values
InstanceGroup named2 = new BasicInstanceGroup("named2", GroupTypes.TYPE_A, "test-dev-1");
// named 3 doesn't have values and it's group doesn't have values
InstanceGroup named3 = new BasicInstanceGroup("named3", GroupTypes.TYPE_B, "test-dev-1");
Assert.assertEquals(chaos.getBoolFromCfgOrDefault(named1, "enabled", true), false);
Assert.assertEquals(chaos.getNumFromCfgOrDefault(named1, "probability", 3.0), 1.1);
Assert.assertEquals(chaos.getNumFromCfgOrDefault(named1, "maxTerminationsPerDay", 4.0), 2.1);