}
@Test
public void testFindProjectFromCache() throws Exception
{
Project project = projectFactory.createTempProject();
Assert.assertNotNull(project);
Project found = projectFactory.findProject(project.getRoot());
Assert.assertNotNull(found);
Assert.assertSame(project, found);
Assert.assertNull(projectFactory.findProject(project.getRoot(), new Predicate<Project>()
{
@Override
public boolean accept(Project type)
{
return false;
}
}));
Project found2 = projectFactory.findProject(project.getRoot().reify(DirectoryResource.class).getChildDirectory("src/main/java"));
Assert.assertNotNull(found2);
Assert.assertSame(found, found2);
Project project2 = projectFactory.createTempProject();
Assert.assertNotSame(found2, project2);
Assert.assertNotEquals(found2.getRoot().getFullyQualifiedName(), project2.getRoot()
.getFullyQualifiedName());
project.getRoot().delete(true);
}