remove assumption symlinks can only be created on Unix from tests
diff --git a/src/tests/antunit/taskdefs/copy-test.xml b/src/tests/antunit/taskdefs/copy-test.xml index 14a4bec..45fd3c4 100644 --- a/src/tests/antunit/taskdefs/copy-test.xml +++ b/src/tests/antunit/taskdefs/copy-test.xml
@@ -304,9 +304,6 @@ <!-- stolen from ../types/readwrite-test.xml - create a read-only file --> <property name="file" value="testfile"/> - <condition property="unix"> - <os family="unix"/> - </condition> <target name="createTestdir"> <mkdir dir="${output}"/> <mkdir dir="${input}"/>
diff --git a/src/tests/antunit/taskdefs/delete-test.xml b/src/tests/antunit/taskdefs/delete-test.xml index 86ae8cd..9229261 100644 --- a/src/tests/antunit/taskdefs/delete-test.xml +++ b/src/tests/antunit/taskdefs/delete-test.xml
@@ -67,13 +67,12 @@ </target> - <target name="checkOs"> - <condition property="unix"> - <os family="unix" /> - </condition> + <target name="checkCanCreateSymlink"> + <condition property="canCreateSymlink"><canCreateSymlink/></condition> </target> - <target name="testDanglingSymlinkInDir" if="unix" depends="checkOs,init"> + <target name="testDanglingSymlinkInDir" if="canCreateSymlink" + depends="checkCanCreateSymlink,init"> <touch file="${output}/foo"/> <symlink link="${existing.dir}/link" resource="${output}/foo"/> @@ -82,7 +81,8 @@ <au:assertFileDoesntExist file="${existing.dir}" /> </target> - <target name="testDanglingSymlink" if="unix" depends="checkOs,init"> + <target name="testDanglingSymlink" if="canCreateSymlink" + depends="checkCanCreateSymlink,init"> <touch file="${output}/foo"/> <symlink link="${output}/link" resource="${output}/foo"/>
diff --git a/src/tests/antunit/taskdefs/move-test.xml b/src/tests/antunit/taskdefs/move-test.xml index 01c9807..e0cecf8 100644 --- a/src/tests/antunit/taskdefs/move-test.xml +++ b/src/tests/antunit/taskdefs/move-test.xml
@@ -126,9 +126,6 @@ <!-- stolen from ../types/readwrite-test.xml - create a read-only file --> <property name="file" value="testfile"/> - <condition property="unix"> - <os family="unix"/> - </condition> <target name="createTestdir"> <mkdir dir="${output}"/> <mkdir dir="${input}"/>
diff --git a/src/tests/antunit/taskdefs/optional/unix/symlink-test.xml b/src/tests/antunit/taskdefs/optional/unix/symlink-test.xml index de2bdec..190f9df 100644 --- a/src/tests/antunit/taskdefs/optional/unix/symlink-test.xml +++ b/src/tests/antunit/taskdefs/optional/unix/symlink-test.xml
@@ -20,9 +20,12 @@ <import file="../../../antunit-base.xml"/> <target name="setUp"> - <condition property="isUnix"> - <os family="unix" /> - </condition> + <condition property="canCreateSymlink"><canCreateSymlink/></condition> + <mkdir dir="${output}" /> + <property name="file_ref" + location="${output}/file"/> + <property name="hanging_ref" + location="${output}/hanging_ref"/> </target> <target name="tearDown" depends="antunit-base.tearDown" @@ -31,23 +34,11 @@ <delete dir="${chmod.tmp}"/> </target> - <target name="os"> - - <mkdir dir="${output}" /> - <condition property="unix"> - <os family="unix" /> - </condition> - <property name="file_ref" - location="${output}/file"/> - <property name="hanging_ref" - location="${output}/hanging_ref"/> - </target> - - <target name="init" depends="os" if="unix"> + <target name="init" depends="setUp" if="canCreateSymlink"> <touch file="${file_ref}" /> </target> - <target name="testCreateDouble" depends="init" if="unix"> + <target name="testCreateDouble" depends="init" if="canCreateSymlink"> <symlink overwrite="true" link="${output}/link" resource="${file_ref}"/> <symlink overwrite="true" link="${output}/link" @@ -55,34 +46,34 @@ </target> - <target name="testCreateDoubleHanging" depends="init" if="unix"> + <target name="testCreateDoubleHanging" depends="init" if="canCreateSymlink"> <symlink overwrite="true" link="${output}/link2" resource="${hanging_ref}"/> <symlink overwrite="true" link="${output}/link2" resource="${hanging_ref}"/> </target> - <target name="testCreateOverFile" depends="init" if="unix"> + <target name="testCreateOverFile" depends="init" if="canCreateSymlink"> <touch file="${output}/link3" /> <symlink overwrite="true" link="${output}/link3" resource="${file_ref}"/> </target> - <target name="testDeleteOfBrokenLink" depends="init" if="unix"> + <target name="testDeleteOfBrokenLink" depends="init" if="canCreateSymlink"> <symlink link="${output}/link" resource="${file_ref}"/> <delete file="${file_ref}"/> <symlink link="${output}/link" action="delete"/> <au:assertFileDoesntExist file="${output}/link"/> </target> - <target name="testDeleteLinkToParent" depends="init" if="unix"> + <target name="testDeleteLinkToParent" depends="init" if="canCreateSymlink"> <symlink link="${output}/link" resource="${output}"/> <symlink link="${output}/link" action="delete"/> <au:assertFileDoesntExist file="${output}/link"/> </target> <target name="testDeleteWithNoPermissionToRenameTarget" - depends="init" if="unix"> + depends="init" if="canCreateSymlink"> <!-- must be outside of ${output} or "base" tearDown will fail --> <property name="chmod.tmp" location="${output}/../ant-symlink-test"/> <mkdir dir="${chmod.tmp}/A"/> @@ -92,7 +83,7 @@ <au:assertFileDoesntExist file="${output}/link"/> </target> - <target name="testDeleteLinkInSameDirAsBuildFile" depends="setUp" if="isUnix" + <target name="testDeleteLinkInSameDirAsBuildFile" depends="setUp" if="canCreateSymlink" description="https://issues.apache.org/bugzilla/show_bug.cgi?id=49137"> <mkdir dir="${output}/Templates"/> <mkdir dir="${output}/project1"/>
diff --git a/src/tests/antunit/types/resources/selectors/readwrite-test.xml b/src/tests/antunit/types/resources/selectors/readwrite-test.xml index 073adb2..2423eeb 100644 --- a/src/tests/antunit/types/resources/selectors/readwrite-test.xml +++ b/src/tests/antunit/types/resources/selectors/readwrite-test.xml
@@ -23,10 +23,6 @@ <property name="dir" location="testdir"/> <property name="file" value="testfile"/> - <condition property="unix"> - <os family="unix"/> - </condition> - <target name="createTestdir"> <mkdir dir="${output}"/> <touch file="${output}/${file}"/>
diff --git a/src/tests/antunit/types/selectors/readwrite-test.xml b/src/tests/antunit/types/selectors/readwrite-test.xml index fcc07fa..208e36b 100644 --- a/src/tests/antunit/types/selectors/readwrite-test.xml +++ b/src/tests/antunit/types/selectors/readwrite-test.xml
@@ -21,10 +21,6 @@ <property name="file" value="testfile"/> - <condition property="unix"> - <os family="unix"/> - </condition> - <target name="createTestdir"> <mkdir dir="${output}"/> <touch file="${output}/${file}"/>
diff --git a/src/tests/antunit/types/selectors/symlink-test.xml b/src/tests/antunit/types/selectors/symlink-test.xml index 41fb69a..ad75115 100644 --- a/src/tests/antunit/types/selectors/symlink-test.xml +++ b/src/tests/antunit/types/selectors/symlink-test.xml
@@ -22,16 +22,14 @@ <property name="file" value="testfile"/> <property name="link" value="testlink"/> - <condition property="unix"> - <os family="unix"/> - </condition> + <condition property="canCreateSymlink"><canCreateSymlink/></condition> <target name="createTestdir"> <mkdir dir="${output}"/> <touch file="${output}/${file}"/> </target> - <target name="testSymlink" depends="makeSymlink" if="unix"> + <target name="testSymlink" depends="makeSymlink" if="canCreateSymlink"> <au:assertTrue> <resourcecount when="equal" count="1"> <fileset dir="${output}"> @@ -48,14 +46,9 @@ </au:assertTrue> </target> - <target name="makeSymlink" - depends="createTestdir,makeSymlink-Unix,makeSymlink-Windows"/> - <target name="makeSymlink-Unix" if="unix"> + <target name="makeSymlink" depends="createTestdir" if="canCreateSymlink"> <symlink link="${output}/${link}" resource="${output}/${file}"/> </target> - <target name="makeSymlink-Windows" unless="unix"> - <!-- no idea how to do this --> - </target> <target name="testNoSymlink" depends="createTestdir"> <au:assertTrue> @@ -75,7 +68,7 @@ </au:assertFalse> </target> - <target name="testAsTrueConditions" depends="makeSymlink" if="unix"> + <target name="testAsTrueConditions" depends="makeSymlink" if="canCreateSymlink"> <au:assertTrue> <isfileselected file="${output}/${link}"> <symlink/>
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/CopyTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/CopyTest.java index 64173f4..d885e4d 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/CopyTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/CopyTest.java
@@ -21,7 +21,7 @@ import org.apache.tools.ant.BuildException; import org.apache.tools.ant.BuildFileRule; import org.apache.tools.ant.FileUtilities; -import org.apache.tools.ant.taskdefs.condition.Os; +import org.apache.tools.ant.taskdefs.condition.CanCreateSymbolicLink; import org.apache.tools.ant.util.FileUtils; import org.junit.Before; import org.junit.Ignore; @@ -275,7 +275,7 @@ @Test public void testCopyToSymlinkedSelf() throws Exception { // we are only going to test against systems that support symlinks - assumeTrue("Symlinks not supported on this operating system", Os.isFamily(Os.FAMILY_UNIX)); + assumeTrue("Symlinks not supported on current system", new CanCreateSymbolicLink().eval()); // setup the source files to run copying against buildRule.executeTarget("setupSelfCopyTesting");
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java index d33d48b..e19f8f5 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/net/FTPTest.java
@@ -37,7 +37,7 @@ import org.apache.tools.ant.DefaultLogger; import org.apache.tools.ant.DirectoryScanner; import org.apache.tools.ant.Project; -import org.apache.tools.ant.taskdefs.condition.Os; +import org.apache.tools.ant.taskdefs.condition.CanCreateSymbolicLink; import org.apache.tools.ant.types.FileSet; import org.apache.tools.ant.util.RetryHandler; import org.apache.tools.ant.util.Retryable; @@ -54,8 +54,7 @@ @Rule public BuildFileRule buildRule = new BuildFileRule(); - // keep track of what operating systems are supported here. - private boolean supportsSymlinks = Os.isFamily("unix"); + private boolean supportsSymlinks = new CanCreateSymbolicLink().eval(); private FTPClient ftp;
diff --git a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/unix/SymlinkTest.java b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/unix/SymlinkTest.java index 8d3b574..ed0bb6f 100644 --- a/src/tests/junit/org/apache/tools/ant/taskdefs/optional/unix/SymlinkTest.java +++ b/src/tests/junit/org/apache/tools/ant/taskdefs/optional/unix/SymlinkTest.java
@@ -30,7 +30,7 @@ package org.apache.tools.ant.taskdefs.optional.unix; import org.apache.tools.ant.BuildFileRule; -import org.apache.tools.ant.taskdefs.condition.Os; +import org.apache.tools.ant.taskdefs.condition.CanCreateSymbolicLink; import org.apache.tools.ant.Project; import org.apache.tools.ant.util.SymbolicLinkUtils; @@ -67,7 +67,7 @@ @Before public void setUp() { - assumeTrue("Symlinks not supported on current operating system", Os.isFamily("unix")); + assumeTrue("Symlinks not supported on current system", new CanCreateSymbolicLink().eval()); buildRule.configureProject("src/etc/testcases/taskdefs/optional/unix/symlink.xml"); buildRule.executeTarget("setUp"); }