| <?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 |
| |
| https://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="sync-test" default="not-me"> |
| <import file="../buildfiletest-base.xml"/> |
| |
| <target name="setUp"> |
| <mkdir dir="${output}" /> |
| <property name="src" location="${output}/source"/> |
| <property name="dest" location="${output}/target"/> |
| <mkdir dir="${src}"/> |
| <mkdir dir="${dest}"/> |
| </target> |
| |
| <target name="not-me"> |
| <fail>This file must be used from a test case</fail> |
| </target> |
| |
| <target name="simplecopy" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <sync todir="${dest}"> |
| <fileset dir="${src}"/> |
| </sync> |
| </target> |
| |
| <target name="copyandremove" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e"/> |
| <touch file="${dest}/e/f"/> |
| <sync todir="${dest}"> |
| <fileset dir="${src}"/> |
| </sync> |
| </target> |
| |
| <target name="copyandremove-with-filelist" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e"/> |
| <touch file="${dest}/e/f"/> |
| <sync todir="${dest}"> |
| <filelist dir="${src}"> |
| <file name="a/b/c/d"/> |
| <file name="not-there"/> |
| </filelist> |
| </sync> |
| </target> |
| |
| <target name="copyandremove-with-zipfileset" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e"/> |
| <touch file="${dest}/e/f"/> |
| <zip destfile="${src}/test.zip"> |
| <fileset dir="${src}" excludes="*.zip"/> |
| </zip> |
| <sync todir="${dest}"> |
| <zipfileset src="${src}/test.zip"/> |
| </sync> |
| </target> |
| |
| <target name="copyandremove-emptypreserve" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e"/> |
| <touch file="${dest}/e/f"/> |
| <sync todir="${dest}"> |
| <fileset dir="${src}"/> |
| <preserveintarget/> |
| </sync> |
| </target> |
| |
| <target name="emptycopy" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <sync todir="${dest}"> |
| <fileset dir="${src}" excludes="**/d"/> |
| </sync> |
| </target> |
| |
| <target name="emptydircopy" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <sync todir="${dest}" |
| includeemptydirs="true"> |
| <fileset dir="${src}" excludes="**/d"/> |
| </sync> |
| </target> |
| |
| <target name="emptydircopyandremove" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e/f"/> |
| <sync todir="${dest}" |
| includeemptydirs="true"> |
| <fileset dir="${src}" excludes="**/d"/> |
| </sync> |
| </target> |
| |
| <target name="copynoremove" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e"/> |
| <touch file="${dest}/e/f"/> |
| <sync todir="${dest}"> |
| <fileset dir="${src}"/> |
| <preserveintarget> |
| <include name="e/f"/> |
| </preserveintarget> |
| </sync> |
| </target> |
| |
| <target name="copynoremove-selectors" depends="setUp"> |
| <mkdir dir="${src}/a/b/c"/> |
| <touch file="${src}/a/b/c/d"/> |
| <mkdir dir="${dest}/e"/> |
| <touch file="${dest}/e/f"/> |
| <sync todir="${dest}"> |
| <fileset dir="${src}"/> |
| <preserveintarget> |
| <filename name="e/f"/> |
| </preserveintarget> |
| </sync> |
| </target> |
| |
| <target name="casesensitivity-test" depends="setUp" description="Tests the bug fix for bz-62890"> |
| <mkdir dir="${src}/casecheck"/> |
| <mkdir dir="${dest}/casecheck"/> |
| <!-- lower case file in source dir --> |
| <touch file="${src}/casecheck/a.txt"/> |
| <!-- upper case file in dest dir --> |
| <touch file="${dest}/casecheck/A.txt"/> |
| <!-- some random file in source dir --> |
| <touch file="${src}/casecheck/foo.txt"/> |
| <!-- some random file in dest dir --> |
| <touch file="${dest}/casecheck/bar.txt"/> |
| |
| <sync todir="${dest}/casecheck" |
| includeEmptyDirs="true" |
| overwrite="false"> |
| <fileset dir="${src}/casecheck"/> |
| </sync> |
| </target> |
| |
| </project> |