Browse Source

docs and tests for unzip/tar and resource collections

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@306519 13f79535-47bb-0310-9956-ffa450edef68
master
Stefan Bodewig 19 years ago
parent
commit
582bc0f7f6
5 changed files with 58 additions and 21 deletions
  1. +11
    -3
      docs/manual/CoreTasks/unzip.html
  2. +15
    -0
      src/etc/testcases/taskdefs/untar.xml
  3. +12
    -0
      src/etc/testcases/taskdefs/unzip.xml
  4. +15
    -18
      src/testcases/org/apache/tools/ant/taskdefs/UntarTest.java
  5. +5
    -0
      src/testcases/org/apache/tools/ant/taskdefs/UnzipTest.java

+ 11
- 3
docs/manual/CoreTasks/unzip.html View File

@@ -14,9 +14,17 @@
<p><a href="../CoreTypes/patternset.html">PatternSet</a>s are used to select files to extract
<I>from</I> the archive. If no patternset is used, all files are extracted.
</p>
<p><a href="../CoreTypes/fileset.html">FileSet</a>s may be used to select archived files
to perform unarchival upon.
</p>

<p><a href="../CoreTypes/resources.html#collection">Resource
Collection</a>s may be used to select archived files to perform
unarchival upon. Only file system based resource collections are
supported by Unjar/Unwar/Unzip, this includes <a
href="../CoreTypes/fileset.html">fileset</a>s, <a
href="../CoreTypes/filelist.html">filelist</a> and <a
href="../using.html#path">path</a>. Untar supports arbitrary resource
collections. Prior to Ant 1.7 only fileset has been supported as a
nested element.</p>

<p>You can define filename transformations by using a nested <a href="../CoreTypes/mapper.html">mapper</a> element. The default mapper is the
<a href="../CoreTypes/mapper.html#identity-mapper">identity mapper</a>.
</p>


+ 15
- 0
src/etc/testcases/taskdefs/untar.xml View File

@@ -4,6 +4,7 @@

<target name="cleanup">
<delete file="asf-logo.gif" />
<delete dir="untartestout"/>
</target>

<target name="testTarTask">
@@ -44,4 +45,18 @@
<target name="encoding">
<untar src="expected/asf-logo.gif.tar" dest="." encoding="foo"/>
</target>

<target name="resourceCollection">
<mkdir dir="untartestout"/>
<zip destfile="untartestout/test.zip">
<fileset dir="expected">
<include name="asf-logo.gif.tar"/>
</fileset>
</zip>
<untar dest=".">
<zipfileset src="untartestout/test.zip">
<include name="*.tar"/>
</zipfileset>
</untar>
</target>
</project>

+ 12
- 0
src/etc/testcases/taskdefs/unzip.xml View File

@@ -122,4 +122,16 @@
<mapper type="flatten"/>
</unzip>
</target>

<target name="testResourceCollection">
<unzip dest="unziptestout">
<patternset>
<include name="junit/**"/>
</patternset>
<restrict>
<path path="${java.class.path}"/>
<type type="file" xmlns="antlib:org.apache.tools.ant.types.resources.selectors"/>
</restrict>
</unzip>
</target>
</project>

+ 15
- 18
src/testcases/org/apache/tools/ant/taskdefs/UntarTest.java View File

@@ -39,39 +39,27 @@ public class UntarTest extends BuildFileTest {
}

public void testRealTest() throws java.io.IOException {
executeTarget("realTest");
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
testLogoExtraction("realTest");
}

public void testRealGzipTest() throws java.io.IOException {
executeTarget("realGzipTest");
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
testLogoExtraction("realGzipTest");
}

public void testRealBzip2Test() throws java.io.IOException {
executeTarget("realBzip2Test");
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
testLogoExtraction("realBzip2Test");
}

public void testTestTarTask() throws java.io.IOException {
executeTarget("testTarTask");
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
testLogoExtraction("testTarTask");
}

public void testTestGzipTarTask() throws java.io.IOException {
executeTarget("testGzipTarTask");
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
testLogoExtraction("testGzipTarTask");
}

public void testTestBzip2TarTask() throws java.io.IOException {
executeTarget("testBzip2TarTask");
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
testLogoExtraction("testBzip2TarTask");
}

public void testSrcDirTest() {
@@ -85,4 +73,13 @@ public class UntarTest extends BuildFileTest {
+ "encoding attribute");
}

public void testResourceCollection() throws java.io.IOException {
testLogoExtraction("resourceCollection");
}

private void testLogoExtraction(String target) throws java.io.IOException {
executeTarget(target);
assertTrue(FILE_UTILS.contentEquals(project.resolveFile("../asf-logo.gif"),
project.resolveFile("asf-logo.gif")));
}
}

+ 5
- 0
src/testcases/org/apache/tools/ant/taskdefs/UnzipTest.java View File

@@ -173,4 +173,9 @@ public class UnzipTest extends BuildFileTest {
expectBuildException("testTwoMappers",Expand.ERROR_MULTIPLE_MAPPERS);
}

public void testResourceCollections() {
executeTarget("testResourceCollection");
assertFileExists("junit.jar has been extracted",
"unziptestout/junit/framework/Assert.class");
}
}

Loading…
Cancel
Save