@Test
public void testTransformTree() {

  Map<String, Object> serviceSite = new HashMap<String, Object>();
  serviceSite.put("property", "service-site-property");
  Map<String, Object> configurations = new HashMap<String, Object>();
  configurations.put("service-site", serviceSite);
  configurations.put("property", "configuration-property");
  Map<String, Object> context = new HashMap<String, Object>();
  context.put("configurations", configurations);
  context.put("property", "context-property");
  ContextTransformer transformer;
  // Without leading "/"
  transformer = new ContextTransformer("configurations/service-site/property");
  Assert.assertEquals("service-site-property", transformer.transform(context));
  // With leading "/"
  transformer = new ContextTransformer("/configurations/service-site/property");
  Assert.assertEquals("service-site-property", transformer.transform(context));
  // Get map of properties
  transformer = new ContextTransformer("/configurations/service-site");
  Assert.assertEquals(serviceSite, transformer.transform(context));
}