diff options
Diffstat (limited to 'framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/multimap.xml')
-rw-r--r-- | framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/multimap.xml | 192 |
1 files changed, 192 insertions, 0 deletions
diff --git a/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/multimap.xml b/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/multimap.xml new file mode 100644 index 00000000..ce4b1218 --- /dev/null +++ b/framework/src/ant/apache-ant-1.9.6/src/etc/testcases/taskdefs/multimap.xml @@ -0,0 +1,192 @@ +<?xml version="1.0"?> +<!-- + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<project name="test" basedir="."> + + <import file="../buildfiletest-base.xml"/> + + <path id="testclasses"> + <pathelement location="../../../../build/testcases" /> + <pathelement path="${java.class.path}" /> + </path> + + <mapper id="testmapper" + classname="org.apache.tools.ant.taskdefs.MultiMapTest$TestMapper" + classpathref="testclasses"/> + + <property name="map.ext" value=".copy2"/> + <property name="rootScratchDir" value="${output}/test_multi_mapper_scratch_area"/> + <property name="baseScratchSrc" value="${rootScratchDir}/src"/> + <property name="baseScratchDest" value="${rootScratchDir}/dest"/> + + <target name="setUp"> + <delete dir="${baseScratchSrc}"/> + <mkdir dir="${baseScratchSrc}"/> + <delete dir="${baseScratchDest}"/> + <mkdir dir="${baseScratchDest}"/> + <touch file="${baseScratchSrc}/somefile.txt"/> + </target> + + <!-- test simple single file to multiple file move --> + <target name="multicopy" depends="setUp"> + <copy todir="${baseScratchDest}" enablemultiplemappings="true"> + <fileset dir="${baseScratchSrc}" includes="somefile.txt"/> + <mapper refid="testmapper"/> + </copy> + <condition property="multicopy.outcome"> + <and> + <available file="${baseScratchDest}/somefile.txt"/> + <available file="${baseScratchDest}/somefile.txt${map.ext}"/> + </and> + </condition> + <fail unless="multicopy.outcome">multicopy failed</fail> + </target> + + <target name="multimove" depends="setUp"> + <move todir="${baseScratchDest}" enablemultiplemappings="true"> + <fileset dir="${baseScratchSrc}" includes="somefile.txt"/> + <mapper refid="testmapper"/> + </move> + <condition property="test2.outcome"> + <and> + <available file="${baseScratchDest}/somefile.txt"/> + <available file="${baseScratchDest}/somefile.txt${map.ext}"/> + <not> + <available file="${baseScratchSrc}/somefile.txt"/> + </not> + <not> + <available file="${baseScratchSrc}/somefile.txt${map.ext}"/> + </not> + </and> + </condition> + <fail unless="test2.outcome">mulitmove failed</fail> + </target> + + <!-- + test traditional single file to single file copy explicitly telling + task to ignore multiple mappings + --> + + <target name="singlecopy" depends="setUp"> + <copy todir="${baseScratchDest}" enablemultiplemappings="false"> + <fileset dir="${baseScratchSrc}" includes="somefile.txt"/> + <mapper refid="testmapper"/> + </copy> + <condition property="singlecopy.outcome"> + <and> + <available file="${baseScratchDest}/somefile.txt"/> + <not> + <available file="${baseScratchDest}/somefile.txt${map.ext}"/> + </not> + <available file="${baseScratchSrc}/somefile.txt"/> + </and> + </condition> + <fail unless="singlecopy.outcome">singlecopy failed</fail> + </target> + + <target name="singlemove" depends="setUp"> + <move todir="${baseScratchDest}" enablemultiplemappings="false"> + <fileset dir="${baseScratchSrc}" includes="somefile.txt"/> + <mapper refid="testmapper"/> + </move> + <condition property="singlemove.outcome"> + <and> + <available file="${baseScratchDest}/somefile.txt"/> + <not> + <available file="${baseScratchDest}/somefile.txt${map.ext}"/> + </not> + <not> + <available file="${baseScratchSrc}/somefile.txt"/> + </not> + </and> + </condition> + <fail unless="singlemove.outcome">singlemove failed</fail> + </target> + + <!-- test dir w/ file + empty dir multimap copy --> + <target name="copywithempty"> + <delete dir="${baseScratchSrc}"/> + <mkdir dir="${baseScratchSrc}/dirwithfile"/> + <mkdir dir="${baseScratchSrc}/emptydir"/> + <touch file="${baseScratchSrc}/dirwithfile/somefile.txt"/> + + <delete dir="${baseScratchDest}"/> + <mkdir dir="${baseScratchDest}"/> + + <copy todir="${baseScratchDest}" enablemultiplemappings="true"> + <fileset dir="${baseScratchSrc}" includes="**/*"/> + <mapper refid="testmapper"/> + </copy> + <condition property="copywithempty.outcome"> + <and> + <available file="${baseScratchDest}/dirwithfile"/> + <available file="${baseScratchDest}/dirwithfile${map.ext}"/> + <available file="${baseScratchDest}/dirwithfile/somefile.txt"/> + <available file="${baseScratchDest}/dirwithfile/somefile.txt${map.ext}"/> + <not> + <available file="${baseScratchDest}/dirwithfile${map.ext}/somefile.txt"/> + </not> + <not> + <available file="${baseScratchDest}/dirwithfile${map.ext}/somefile.txt${map.ext}"/> + </not> + <available file="${baseScratchDest}/emptydir"/> + <available file="${baseScratchDest}/emptydir${map.ext}"/> + </and> + </condition> + <fail unless="copywithempty.outcome">copywithempty failed</fail> + </target> + <!-- test dir w/ file + empty dir multimap move --> + <target name="movewithempty"> + <delete dir="${baseScratchSrc}"/> + <mkdir dir="${baseScratchSrc}/dirwithfile"/> + <mkdir dir="${baseScratchSrc}/emptydir"/> + <touch file="${baseScratchSrc}/dirwithfile/somefile.txt"/> + + <delete dir="${baseScratchDest}"/> + <mkdir dir="${baseScratchDest}"/> + + <move todir="${baseScratchDest}" enablemultiplemappings="true"> + <fileset dir="${baseScratchSrc}" includes="**/*"/> + <mapper refid="testmapper"/> + </move> + <condition property="movewithempty.outcome"> + <and> + <available file="${baseScratchDest}/dirwithfile"/> + <available file="${baseScratchDest}/dirwithfile${map.ext}"/> + <available file="${baseScratchDest}/dirwithfile/somefile.txt"/> + <available file="${baseScratchDest}/dirwithfile/somefile.txt${map.ext}"/> + <not> + <available file="${baseScratchDest}/dirwithfile${map.ext}/somefile.txt"/> + </not> + <not> + <available file="${baseScratchDest}/dirwithfile${map.ext}/somefile.txt${map.ext}"/> + </not> + <available file="${baseScratchDest}/emptydir"/> + <available file="${baseScratchDest}/emptydir${map.ext}"/> + <not> + <available file="${baseScratchSrc}/dirwithfile"/> + </not> + <not> + <available file="${baseScratchSrc}/emptydir"/> + </not> + </and> + </condition> + <fail unless="movewithempty.outcome">movewithempty failed</fail> + </target> + + +</project> |