ResolvedPom { public String resolveProperties(String value) { for (PomWrapper pom : poms) { value = pom.resolveProperties(value); } return value; } ResolvedPom(File pom);  ResolvedPom(File pom, LocalRepository repo);  ResolvedPom(PomWrapper pom, LocalRepository repo); Artifact getGAV(); PomWrapper getPom(int index); Map<GAKey,Artifact> getDirectDependencies(); Collection<ResolvedPom> getImportedPoms(); String resolveProperties(String value);  }
@Test public void testResolveProperties() throws Exception { ResolvedPom pom = new ResolvedPom(new File("../test-dependency-child/pom.xml")); assertEquals("property defined in child", "foo", pom.resolveProperties("${test.prop.child}")); assertEquals("property defined in parent", "bar", pom.resolveProperties("${test.prop.parent}")); assertEquals("property that involves both", "foo-bar-baz", pom.resolveProperties("${test.prop.combined}")); }