}
@Test
public void testCreateNestedProjectWithParentThatHasInheritedVersion() throws Exception
{
DirectoryResource addonDir = factory.create(forge.getRepositories().get(0).getRootDirectory()).reify(
DirectoryResource.class);
DirectoryResource projectDir = addonDir.createTempResource();
Project parentProject = projectFactory.createProject(projectDir, locator);
Assert.assertNotNull(parentProject);
MetadataFacet metadata = parentProject.getFacet(MetadataFacet.class);
metadata.setProjectName("parent");
metadata.setProjectGroupName("com.project.parent");
parentProject.getFacet(PackagingFacet.class).setPackagingType("pom");
DirectoryResource intermediateProjectDir = parentProject.getRoot().reify(DirectoryResource.class)
.getChildDirectory("intermediate");
Project intermediateProject = projectFactory.createProject(intermediateProjectDir, locator);
MavenFacet parentMavenFacet = parentProject.getFacet(MavenFacet.class);
List<String> modules = parentMavenFacet.getModel().getModules();
Assert.assertFalse(modules.isEmpty());
Assert.assertEquals("intermediate", modules.get(0));
intermediateProject.getFacet(MetadataFacet.class).setProjectVersion("");
intermediateProject.getFacet(PackagingFacet.class).setPackagingType("pom");
DirectoryResource subProjectDir = intermediateProject.getRoot().reify(DirectoryResource.class)
.getChildDirectory("sub");
Project subProject = projectFactory.createProject(subProjectDir, locator);
MavenFacet intermediateMavenFacet = intermediateProject.getFacet(MavenFacet.class);
List<String> intermediateModules = intermediateMavenFacet.getModel().getModules();