Author: jkf Date: Thu Aug 16 06:33:00 2007 New Revision: 566707 URL: http://svn.apache.org/viewvc?view=rev&rev=566707 Log: Pr 43016 improved error reporting on nothing to compress.
Added: ant/core/trunk/src/tests/antunit/taskdefs/gzip-test.xml Modified: ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/Pack.java Modified: ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/Pack.java URL: http://svn.apache.org/viewvc/ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/Pack.java?view=diff&rev=566707&r1=566706&r2=566707 ============================================================================== --- ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/Pack.java (original) +++ ant/core/trunk/src/main/org/apache/tools/ant/taskdefs/Pack.java Thu Aug 16 06:33:00 2007 @@ -88,9 +88,14 @@ * @param a the resource to pack as a single element Resource collection. */ public void addConfigured(ResourceCollection a) { + if (a.size() == 0) { + throw new BuildException("No resource selected, " + getTaskName() + + " needs exactly one resource."); + } if (a.size() != 1) { - throw new BuildException("only single argument resource collections" - + " are supported as archives"); + throw new BuildException(getTaskName() + + " cannot handle multiple resources at once. (" + a.size() + + " resources were selected.)"); } setSrcResource((Resource) a.iterator().next()); } Added: ant/core/trunk/src/tests/antunit/taskdefs/gzip-test.xml URL: http://svn.apache.org/viewvc/ant/core/trunk/src/tests/antunit/taskdefs/gzip-test.xml?view=auto&rev=566707 ============================================================================== --- ant/core/trunk/src/tests/antunit/taskdefs/gzip-test.xml (added) +++ ant/core/trunk/src/tests/antunit/taskdefs/gzip-test.xml Thu Aug 16 06:33:00 2007 @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="utf-8"?> +<project default="antunit" xmlns:au="antlib:org.apache.ant.antunit"> + + <!-- note relies on antunit built from svn trunk (1.1-alpha) --> + <import file="../antunit-base.xml" /> + + <target name="setUp"> + <mkdir dir="${java.io.tmpdir}/gzip-test" /> + <mkdir dir="${java.io.tmpdir}/gzip-test/empty" /> + <touch file="${java.io.tmpdir}/gzip-test/fileone" /> + <touch file="${java.io.tmpdir}/gzip-test/filetwo" /> + </target> + + <target name="tearDown"> + <delete includeemptydirs="true"> + <fileset dir="${java.io.tmpdir}/gzip-test" /> + </delete> + </target> + + <target name="testFailNone"> + <au:expectfailure expectedmessage="No resource selected, gzip needs exactly one resource." message="Should have thrown an exception"> + <gzip destfile="${java.io.tmpdir}/gzip-test/file.gz"> + <fileset dir="${java.io.tmpdir}/gzip-test/empty" /> + </gzip> + </au:expectfailure> + </target> + + <target name="testFailTwo"> + <au:expectfailure expectedmessage="gzip cannot handle multiple resources at once. (2 resources were selected.)" message="Should have thrown an exception"> + <gzip destfile="${java.io.tmpdir}/gzip-test/file.gz"> + <fileset dir="${java.io.tmpdir}/gzip-test" /> + </gzip> + </au:expectfailure> + </target> + +</project> --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]