Author: bodewig
Date: Mon Aug 31 03:25:44 2009
New Revision: 809455
URL: http://svn.apache.org/viewvc?rev=809455&view=rev
Log:
Make non-File dests as nested elements work, with tests
Modified:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/ArchiveBase.java
ant/sandbox/antlibs/compress/trunk/src/tests/antunit/ar-test.xml
ant/sandbox/antlibs/compress/trunk/src/tests/antunit/cpio-test.xml
ant/sandbox/antlibs/compress/trunk/src/tests/antunit/tar-test.xml
ant/sandbox/antlibs/compress/trunk/src/tests/antunit/zip-test.xml
Modified:
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/ArchiveBase.java
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/ArchiveBase.java?rev=809455&r1=809454&r2=809455&view=diff
==============================================================================
---
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/ArchiveBase.java
(original)
+++
ant/sandbox/antlibs/compress/trunk/src/main/org/apache/ant/compress/taskdefs/ArchiveBase.java
Mon Aug 31 03:25:44 2009
@@ -58,6 +58,7 @@
import org.apache.tools.ant.types.ResourceCollection;
import org.apache.tools.ant.types.resources.ArchiveResource;
import org.apache.tools.ant.types.resources.FileResource;
+import org.apache.tools.ant.types.resources.Resources;
import org.apache.tools.ant.util.FileUtils;
import org.apache.tools.zip.UnixStat;
@@ -95,13 +96,22 @@
* The archive to create.
*/
public void setDestfile(File f) {
- addDest(new FileResource(f));
+ setDest(new FileResource(f));
}
/**
* The archive to create.
*/
- public void addDest(Resource r) {
+ public void addConfiguredDest(Resources r) {
+ for (Iterator it = r.iterator(); it.hasNext(); ) {
+ setDest((Resource) it.next());
+ }
+ }
+
+ /**
+ * The archive to create.
+ */
+ public void setDest(Resource r) {
if (dest != null) {
throw new BuildException("Can only have one destination resource"
+ " for archive.");
Modified: ant/sandbox/antlibs/compress/trunk/src/tests/antunit/ar-test.xml
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/tests/antunit/ar-test.xml?rev=809455&r1=809454&r2=809455&view=diff
==============================================================================
--- ant/sandbox/antlibs/compress/trunk/src/tests/antunit/ar-test.xml (original)
+++ ant/sandbox/antlibs/compress/trunk/src/tests/antunit/ar-test.xml Mon Aug 31
03:25:44 2009
@@ -371,4 +371,22 @@
level="warn"/>
<au:assertFileDoesntExist file="${dest}"/>
</target>
+
+ <target name="testNonFileDest" depends="setUp">
+ <cmp:ar>
+ <fileset dir="." includes="ar-test.xml"/>
+ <dest>
+ <gzipresource>
+ <file file="${dest}.gz"/>
+ </gzipresource>
+ </dest>
+ </cmp:ar>
+ <au:assertFileExists file="${dest}.gz"/>
+ <au:assertFileDoesntExist file="${dest}"/>
+ <gunzip src="${dest}.gz" dest="${dest}"/>
+ <cmp:unar src="${dest}" dest="${output}"/>
+ <au:assertFilesMatch expected="ar-test.xml"
+ actual="${output}/ar-test.xml"/>
+ </target>
+
</project>
Modified: ant/sandbox/antlibs/compress/trunk/src/tests/antunit/cpio-test.xml
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/tests/antunit/cpio-test.xml?rev=809455&r1=809454&r2=809455&view=diff
==============================================================================
--- ant/sandbox/antlibs/compress/trunk/src/tests/antunit/cpio-test.xml
(original)
+++ ant/sandbox/antlibs/compress/trunk/src/tests/antunit/cpio-test.xml Mon Aug
31 03:25:44 2009
@@ -404,4 +404,22 @@
level="warn"/>
<au:assertFileDoesntExist file="${dest}"/>
</target>
+
+ <target name="testNonFileDest" depends="setUp">
+ <cmp:cpio>
+ <fileset dir="." includes="ar-test.xml"/>
+ <dest>
+ <gzipresource>
+ <file file="${dest}.gz"/>
+ </gzipresource>
+ </dest>
+ </cmp:cpio>
+ <au:assertFileExists file="${dest}.gz"/>
+ <au:assertFileDoesntExist file="${dest}"/>
+ <gunzip src="${dest}.gz" dest="${dest}"/>
+ <cmp:uncpio src="${dest}" dest="${output}"/>
+ <au:assertFilesMatch expected="ar-test.xml"
+ actual="${output}/ar-test.xml"/>
+ </target>
+
</project>
Modified: ant/sandbox/antlibs/compress/trunk/src/tests/antunit/tar-test.xml
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/tests/antunit/tar-test.xml?rev=809455&r1=809454&r2=809455&view=diff
==============================================================================
--- ant/sandbox/antlibs/compress/trunk/src/tests/antunit/tar-test.xml (original)
+++ ant/sandbox/antlibs/compress/trunk/src/tests/antunit/tar-test.xml Mon Aug
31 03:25:44 2009
@@ -421,4 +421,21 @@
level="warn"/>
<au:assertFileDoesntExist file="${dest}"/>
</target>
+
+ <target name="testNonFileDest" depends="setUp">
+ <cmp:tar>
+ <fileset dir="." includes="ar-test.xml"/>
+ <dest>
+ <gzipresource>
+ <file file="${dest}.gz"/>
+ </gzipresource>
+ </dest>
+ </cmp:tar>
+ <au:assertFileExists file="${dest}.gz"/>
+ <au:assertFileDoesntExist file="${dest}"/>
+ <gunzip src="${dest}.gz" dest="${dest}"/>
+ <untar src="${dest}" dest="${output}"/>
+ <au:assertFilesMatch expected="ar-test.xml"
+ actual="${output}/ar-test.xml"/>
+ </target>
</project>
Modified: ant/sandbox/antlibs/compress/trunk/src/tests/antunit/zip-test.xml
URL:
http://svn.apache.org/viewvc/ant/sandbox/antlibs/compress/trunk/src/tests/antunit/zip-test.xml?rev=809455&r1=809454&r2=809455&view=diff
==============================================================================
--- ant/sandbox/antlibs/compress/trunk/src/tests/antunit/zip-test.xml (original)
+++ ant/sandbox/antlibs/compress/trunk/src/tests/antunit/zip-test.xml Mon Aug
31 03:25:44 2009
@@ -429,4 +429,21 @@
level="warn"/>
<au:assertFileDoesntExist file="${dest}"/>
</target>
+
+ <target name="testNonFileDest" depends="setUp">
+ <cmp:zip>
+ <fileset dir="." includes="ar-test.xml"/>
+ <dest>
+ <gzipresource>
+ <file file="${dest}.gz"/>
+ </gzipresource>
+ </dest>
+ </cmp:zip>
+ <au:assertFileExists file="${dest}.gz"/>
+ <au:assertFileDoesntExist file="${dest}"/>
+ <gunzip src="${dest}.gz" dest="${dest}"/>
+ <unzip src="${dest}" dest="${output}"/>
+ <au:assertFilesMatch expected="ar-test.xml"
+ actual="${output}/ar-test.xml"/>
+ </target>
</project>