git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@273821 13f79535-47bb-0310-9956-ffa450edef68master
| @@ -3,6 +3,7 @@ | |||||
| <project name="jar-test" basedir="." default="test1"> | <project name="jar-test" basedir="." default="test1"> | ||||
| <property name="tmp.jar" location="tmp.jar"/> | <property name="tmp.jar" location="tmp.jar"/> | ||||
| <property name="tmp.dir" location="jartmp"/> | |||||
| <target name="test1"> | <target name="test1"> | ||||
| <jar/> | <jar/> | ||||
| @@ -41,7 +42,7 @@ | |||||
| <target name="testRecreateNewerFileSetup" depends="test4"> | <target name="testRecreateNewerFileSetup" depends="test4"> | ||||
| <touch file="jar.xml"/> | <touch file="jar.xml"/> | ||||
| <sleep seconds="2"/> | |||||
| <sleep seconds="3"/> | |||||
| <touch file="${tmp.jar}"/> | <touch file="${tmp.jar}"/> | ||||
| </target> | </target> | ||||
| @@ -79,8 +80,23 @@ | |||||
| /> | /> | ||||
| </target> | </target> | ||||
| <target name="testManifestStaysIntact"> | |||||
| <mkdir dir="${tmp.dir}"/> | |||||
| <manifest file="${tmp.dir}/manifest"> | |||||
| <attribute name="Foo" value="bar"/> | |||||
| </manifest> | |||||
| <jar destfile="${tmp.jar}" basedir="." includes="jar.xml" | |||||
| manifest="${tmp.dir}/manifest"/> | |||||
| <sleep seconds="3"/> | |||||
| <touch file="jar.xml"/> | |||||
| <jar destfile="${tmp.jar}" basedir="." includes="jar.xml" | |||||
| update="true"/> | |||||
| <unjar src="${tmp.jar}" dest="${tmp.dir}"/> | |||||
| </target> | |||||
| <target name="cleanup"> | <target name="cleanup"> | ||||
| <delete file="${tmp.jar}" /> | <delete file="${tmp.jar}" /> | ||||
| <delete dir="${tmp.dir}"/> | |||||
| </target> | </target> | ||||
| </project> | </project> | ||||
| @@ -55,6 +55,8 @@ | |||||
| package org.apache.tools.ant.taskdefs; | package org.apache.tools.ant.taskdefs; | ||||
| import java.io.File; | import java.io.File; | ||||
| import java.io.FileReader; | |||||
| import java.io.IOException; | |||||
| import java.util.Date; | import java.util.Date; | ||||
| import org.apache.tools.ant.BuildFileTest; | import org.apache.tools.ant.BuildFileTest; | ||||
| @@ -149,4 +151,16 @@ public class JarTest extends BuildFileTest { | |||||
| assertTrue("jar has been recreated in " + secondTarget, | assertTrue("jar has been recreated in " + secondTarget, | ||||
| jarModifiedDate < jarFile.lastModified()); | jarModifiedDate < jarFile.lastModified()); | ||||
| } | } | ||||
| public void XtestManifestStaysIntact() | |||||
| throws IOException, ManifestException { | |||||
| executeTarget("testManifestStaysIntact"); | |||||
| Manifest mf1 = | |||||
| new Manifest(new FileReader(getProject() | |||||
| .resolveFile("jartmp/manifest"))); | |||||
| Manifest mf2 = | |||||
| new Manifest(new FileReader(getProject() | |||||
| .resolveFile("jartmp/META-INF/MANIFEST.MF"))); | |||||
| assertEquals(mf1, mf2); | |||||
| } | |||||
| } | } | ||||