public void test007_staleDependencies() throws Exception { // p1 depends on p2 IProject p1 = createExisting("t007-p1"); IProject p2 = createExisting("t007-p2"); waitForJobsToComplete(); IMavenProjectFacade f1 = manager.create(p1, monitor); assertEquals(1, f1.getMavenProject(monitor).getArtifacts().size()); // update p1 to remove dependency on p2 copyContent(p1, "pom_updated.xml", "pom.xml"); f1 = manager.create(p1, monitor); assertEquals(0, f1.getMavenProject(monitor).getArtifacts().size()); events.clear(); // remove p2 deleteProject(p2); waitForJobsToComplete(); assertEquals(1, events.size()); MavenProjectChangedEvent event = events.get(0); assertEquals(p2.getFile(IMavenConstants.POM_FILE_NAME), event.getSource()); assertEquals(MavenProjectChangedEvent.KIND_REMOVED, event.getKind()); }
public void test008_staleMissingParent() throws Exception { // p1 does not have parent IProject p1 = createExisting("t008-p1"); assertNotNull(p1); IProject p3 = createExisting("t008-p3"); assertNotNull(p3); waitForJobsToComplete(); IMavenProjectFacade f1 = manager.create(p1, monitor); assertNull(f1); // XXX should I return non-null facade that does not have MavenProject? // update p1 to have p3 parent InputStream contents = p1.getFile("pom_updated.xml").getContents(); p1.getFile("pom.xml").setContents(contents, IResource.FORCE, monitor); contents.close(); waitForJobsToComplete(); f1 = manager.create(p1, monitor); assertEquals("t008-p3", getParentProject(f1).getArtifactId()); events.clear(); IProject p2 = createExisting("t008-p2"); waitForJobsToComplete(); assertEquals(1, events.size()); MavenProjectChangedEvent event = events.get(0); assertEquals(p2.getFile(IMavenConstants.POM_FILE_NAME), event.getSource()); assertEquals(MavenProjectChangedEvent.KIND_ADDED, event.getKind()); }
public void test000_noChangeReload() throws Exception { IProject p1 = createExisting("t000-p1"); IFile pom = p1.getFile(IMavenConstants.POM_FILE_NAME); waitForJobsToComplete(); IMavenProjectFacade oldFacade = manager.create(p1, monitor); MavenProjectChangedEvent event; // assertEquals(1, events.size()); // event = events.get(0); // assertEquals(pom, event.getSource()); // assertEquals(MavenProjectChangedEvent.KIND_ADDED, event.getKind()); events.clear(); pom.setLocalTimeStamp(pom.getLocalTimeStamp() + 1000L); pom.touch(monitor); waitForJobsToComplete(); IMavenProjectFacade newFacade = manager.create(p1, monitor); assertNotSame(oldFacade.getMavenProject(monitor), newFacade.getMavenProject(monitor)); assertEquals(1, events.size()); event = events.get(0); assertEquals(pom, event.getSource()); assertEquals(MavenProjectChangedEvent.KIND_CHANGED, event.getKind()); assertEquals(MavenProjectChangedEvent.FLAG_NONE, event.getFlags()); assertNotNull(event.getOldMavenProject()); assertNotNull(event.getMavenProject()); }
public void test008_staleMissingParent2() throws Exception { // p1 does not have parent IProject p1 = createExisting("t008-p1"); waitForJobsToComplete(); // update p1 to have p3 parent InputStream contents = p1.getFile("pom_updated.xml").getContents(); p1.getFile("pom.xml").setContents(contents, IResource.FORCE, monitor); contents.close(); waitForJobsToComplete(); events.clear(); IProject p2 = createExisting("t008-p2"); waitForJobsToComplete(); assertEquals(1, events.size()); MavenProjectChangedEvent event = events.get(0); assertEquals(p2.getFile(IMavenConstants.POM_FILE_NAME), event.getSource()); assertEquals(MavenProjectChangedEvent.KIND_ADDED, event.getKind()); }