You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-commits@incubator.apache.org by ma...@apache.org on 2007/04/01 21:15:50 UTC

svn commit: r524691 - /incubator/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyPostResolveTaskTest.java

Author: maartenc
Date: Sun Apr  1 14:15:49 2007
New Revision: 524691

URL: http://svn.apache.org/viewvc?view=rev&rev=524691
Log:
Added more junit tests for resolveId and post-resolve task (IVY-366)

Modified:
    incubator/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyPostResolveTaskTest.java

Modified: incubator/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyPostResolveTaskTest.java
URL: http://svn.apache.org/viewvc/incubator/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyPostResolveTaskTest.java?view=diff&rev=524691&r1=524690&r2=524691
==============================================================================
--- incubator/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyPostResolveTaskTest.java (original)
+++ incubator/ivy/core/trunk/test/java/org/apache/ivy/ant/IvyPostResolveTaskTest.java Sun Apr  1 14:15:49 2007
@@ -120,6 +120,24 @@
     	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", reportBefore, reportAfter);
     }
 
+    public void testWithPreviousResolveInSameBuildAndBothWildcard() throws Exception {
+    	IvyResolve resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-multiconf.xml"));
+    	resolve.setConf("*");
+    	resolve.execute();
+
+    	ResolveReport reportBefore = (ResolveReport) _project.getReference("ivy.resolved.report");
+    
+    	_task.setConf("*");
+    	_task.execute();
+
+    	ResolveReport reportAfter = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", reportBefore, reportAfter);
+    }
+
     public void testWithPreviousResolveInSameBuildAndMoreConfs() throws Exception {
     	IvyResolve resolve = new IvyResolve();
     	resolve.setProject(_project);
@@ -141,7 +159,168 @@
     	assertTrue(getArchiveFileInCache("org1", "mod1.2", "2.0", "mod1.2", "jar", "jar").exists());
     }
 
+    public void testWithResolveIdAndPreviousResolveInSameBuildAndLessConfs() throws Exception {
+    	IvyResolve resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-multiconf.xml"));
+    	resolve.setConf("default,compile");
+    	resolve.setResolveId("testResolveId");
+    	resolve.execute();
+
+    	ResolveReport report1 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+
+    	// perform another resolve
+    	resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-simple.xml"));
+    	resolve.setConf("*");
+    	resolve.execute();
+    
+    	ResolveReport reportBefore = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	
+    	_task.setConf("default");
+    	_task.setResolveId("testResolveId");
+    	_task.execute();
+
+    	ResolveReport reportAfter = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	ResolveReport report2 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+    	
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", reportBefore, reportAfter);
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", report1, report2);
+    }
+
+    public void testWithResolveIdAndPreviousResolveInSameBuildAndSameConfs() throws Exception {
+    	IvyResolve resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-multiconf.xml"));
+    	resolve.setConf("default");
+    	resolve.setResolveId("testResolveId");
+    	resolve.execute();
+
+    	ResolveReport report1 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+
+    	// perform another resolve
+    	resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-simple.xml"));
+    	resolve.setConf("*");
+    	resolve.execute();
+
+    	ResolveReport reportBefore = (ResolveReport) _project.getReference("ivy.resolved.report");
+    
+    	_task.setConf("default");
+    	_task.setResolveId("testResolveId");
+    	_task.execute();
+
+    	ResolveReport reportAfter = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	ResolveReport report2 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+    	
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", reportBefore, reportAfter);
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", report1, report2);
+    }
+
+    public void testWithResolveIdAndPreviousResolveInSameBuildAndWildcard() throws Exception {
+    	IvyResolve resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-multiconf.xml"));
+    	resolve.setConf("*");
+    	resolve.setResolveId("testResolveId");
+    	resolve.execute();
 
+    	ResolveReport report1 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+
+    	// perform another resolve
+    	resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-simple.xml"));
+    	resolve.setConf("*");
+    	resolve.execute();
+
+    	ResolveReport reportBefore = (ResolveReport) _project.getReference("ivy.resolved.report");
+    
+    	_task.setConf("default");
+    	_task.setResolveId("testResolveId");
+    	_task.execute();
+
+    	ResolveReport reportAfter = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	ResolveReport report2 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+    	
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", reportBefore, reportAfter);
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", report1, report2);
+    }
+
+    public void testWithResolveIdAndPreviousResolveInSameBuildAndBothWildcard() throws Exception {
+    	IvyResolve resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-multiconf.xml"));
+    	resolve.setConf("*");
+    	resolve.setResolveId("testResolveId");
+    	resolve.execute();
+
+    	ResolveReport report1 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+
+    	// perform another resolve
+    	resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-simple.xml"));
+    	resolve.setConf("*");
+    	resolve.execute();
+
+    	ResolveReport reportBefore = (ResolveReport) _project.getReference("ivy.resolved.report");
+    
+    	_task.setConf("*");
+    	_task.setResolveId("testResolveId");
+    	_task.execute();
+
+    	ResolveReport reportAfter = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	ResolveReport report2 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+    	
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", reportBefore, reportAfter);
+    	assertSame("IvyPostResolveTask has performed a resolve where it shouldn't", report1, report2);
+    }
+
+    public void testWithResolveIdAndPreviousResolveInSameBuildAndMoreConfs() throws Exception {
+    	IvyResolve resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-multiconf.xml"));
+    	resolve.setConf("compile");
+    	resolve.setResolveId("testResolveId");
+    	resolve.execute();
+
+    	ResolveReport report1 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+    	assertTrue(getArchiveFileInCache("org1", "mod1.1", "2.0", "mod1.1", "jar", "jar").exists());
+    	assertFalse(getArchiveFileInCache("org1", "mod1.2", "2.0", "mod1.2", "jar", "jar").exists());
+
+    	// perform another resolve
+    	resolve = new IvyResolve();
+    	resolve.setProject(_project);
+    	resolve.setCache(_cache);
+    	resolve.setFile(new File("test/java/org/apache/ivy/ant/ivy-simple.xml"));
+    	resolve.setConf("*");
+    	resolve.execute();
+
+    	ResolveReport reportBefore = (ResolveReport) _project.getReference("ivy.resolved.report");
+    
+    	_task.setConf("*");
+    	_task.setResolveId("testResolveId");
+    	_task.execute();
+
+    	ResolveReport reportAfter = (ResolveReport) _project.getReference("ivy.resolved.report");
+    	ResolveReport report2 = (ResolveReport) _project.getReference("ivy.resolved.report.testResolveId");
+    	
+    	assertNotSame("IvyPostResolveTask hasn't performed a resolve where it should have", reportBefore, reportAfter);
+    	assertNotSame("IvyPostResolveTask hasn't performed a resolve where it should have", report1, report2);
+    	assertTrue(getArchiveFileInCache("org1", "mod1.2", "2.0", "mod1.2", "jar", "jar").exists());
+    }
 
     private File getArchiveFileInCache(String organisation, String module, String revision, String artifact, String type, String ext) {
 		return TestHelper.getArchiveFileInCache(_task.getIvyInstance(), _cache,