<?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 default="antunit"
         xmlns:au="antlib:org.apache.ant.antunit"
         xmlns:cond="antlib:org.apache.tools.ant.types.conditions"
         xmlns:cmp="antlib:org.apache.ant.compress">

  <import file="antunit-base.xml" />

  <target name="setUp">
    <mkdir dir="${output}"/>
    <mkdir dir="${input}/subdir"/>
    <copy todir="${input}/subdir" file="../resources/asf-logo.gif"/>
    <property name="dest" location="${output}/test.cpio"/>
    <macrodef name="checkProperties">
      <attribute name="pattern" default="yyyy-MM-dd-HH:mm:ss Z"/>
      <attribute name="dateTime"/>
      <attribute name="uid" default="0"/>
      <attribute name="gid" default="0"/>
      <attribute name="mode" default="644"/>
      <sequential>
        <au:assertTrue>
          <cond:islastmodified datetime="@{dateTime}"
                               pattern="@{pattern}">
            <cmp:cpioentry name="asf-logo.gif">
              <file file="${dest}"/>
            </cmp:cpioentry>
          </cond:islastmodified>
        </au:assertTrue>
        <au:assertTrue>
          <cmp:hasuserid id="@{uid}">
            <cmp:cpioentry name="asf-logo.gif">
              <file file="${dest}"/>
            </cmp:cpioentry>
          </cmp:hasuserid>
        </au:assertTrue>
        <au:assertTrue>
          <cmp:hasgroupid id="@{gid}">
            <cmp:cpioentry name="asf-logo.gif">
              <file file="${dest}"/>
            </cmp:cpioentry>
          </cmp:hasgroupid>
        </au:assertTrue>
        <au:assertTrue>
          <cmp:hasmode mode="@{mode}">
            <cmp:cpioentry name="asf-logo.gif">
              <file file="${dest}"/>
            </cmp:cpioentry>
          </cmp:hasmode>
        </au:assertTrue>
      </sequential>
    </macrodef>
  </target>

  <target name="testPlainFileSet" depends="setUp">
    <mkdir dir="${input}"/>
    <copy todir="${input}" file="../resources/asf-logo.gif"/>
    <touch datetime="2009-08-19-05:49:21 +0200"
           pattern="yyyy-MM-dd-HH:mm:ss Z"
           file="${input}/asf-logo.gif"/>
    <cmp:cpio destfile="${dest}">
      <fileset dir="${input}" includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2009-08-19-05:49:21 +0200"/>
  </target>

  <target name="testCoreZipFileSet" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <zipfileset src="../resources/asf-logo.gif.zip"
                  includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2001-11-19-15:34:20"
                     pattern="yyyy-MM-dd-HH:mm:ss"
                     mode="644"/>
  </target>

  <target name="testAntlibZipFileSet" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:zipfileset src="../resources/asf-logo.gif.zip"
                      includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2001-11-19-15:34:20"
                     pattern="yyyy-MM-dd-HH:mm:ss"
                     mode="644"/>
  </target>

  <target name="testCoreTarFileSet" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <tarfileset src="../resources/asf-logo.gif.tar"
                  includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2001-11-19-15:34:20 +0100" mode="644"
                     uid="500" gid="500"/>
  </target>

  <target name="testAntlibTarFileSet" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:tarfileset src="../resources/asf-logo.gif.tar"
                      includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2001-11-19-15:34:20 +0100" mode="644"
                     uid="500" gid="500"/>
  </target>

  <target name="testArFileSet" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2009-07-31-20:11:13 +0200" mode="644"
                     uid="1000" gid="1000"/>
  </target>

  <target name="testCpioFileSet" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:cpiofileset src="../resources/asf-logo.gif.bin.cpio"
                       includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2009-07-31-20:11:13 +0200" mode="644"
                     uid="1000" gid="1000"/>
  </target>

  <target name="testNoDirectoriesByDefault" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <fileset dir="${input}"/>
      <dirset dir="${input}"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="subdir/asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="subdir/">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testWithDirectories" depends="setUp">
    <cmp:cpio destfile="${dest}" filesonly="false">
      <dirset dir="${input}" excludes="."/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="subdir/">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <au:assertTrue>
      <cmp:hasmode mode="755">
        <cmp:cpioentry name="subdir/">
          <file file="${dest}"/>
        </cmp:cpioentry>
      </cmp:hasmode>
    </au:assertTrue>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="subdir/asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testWithImplicitDirectories" depends="setUp">
    <cmp:cpio destfile="${dest}" filesonly="false">
      <fileset dir="${input}"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="subdir/">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <au:assertTrue>
      <cmp:hasmode mode="755">
        <cmp:cpioentry name="subdir/">
          <file file="${dest}"/>
        </cmp:cpioentry>
      </cmp:hasmode>
    </au:assertTrue>
    <assertResourceExists>
      <cmp:cpioentry name="subdir/asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
  </target>

  <target name="testImplicitDirectoriesUsePermissions" depends="setUp">
    <cmp:cpio destfile="${dest}" filesonly="false">
      <zipfileset dir="${input}" dirmode="750"/>
    </cmp:cpio>
    <au:assertTrue>
      <cmp:hasmode mode="750">
        <cmp:cpioentry name="subdir/">
          <file file="${dest}"/>
        </cmp:cpioentry>
      </cmp:hasmode>
    </au:assertTrue>
  </target>

  <target name="testFileSetPermissionsWin" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     filemode="600"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2009-07-31-20:11:13 +0200" mode="600"
                     uid="1000" gid="1000"/>
  </target>

  <target name="testFullpath" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     fullpath="logo.gif"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testPrefixWithSlash" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     prefix="x/"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="x/asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testPrefixWithBackslash" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     prefix="x\"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="x/asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testPrefixWithoutSlash" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     prefix="x"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="x/asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="asf-logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="-setUp0Permissions" depends="setUp">
    <property name="src" location="${input}/src.ar"/>
    <cmp:ar destfile="${src}" preserve0permissions="true">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     filemode="0"
                     includes="asf-logo.gif"/>
    </cmp:ar>
  </target>

  <target name="test0PermissionsGetReplaced"
                     depends="-setUp0Permissions">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="${src}"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2009-07-31-20:11:13 +0200" mode="644"
                     uid="1000" gid="1000"/>
  </target>

  <target name="testPreserve0Permissions"
                     depends="-setUp0Permissions">
    <cmp:cpio destfile="${dest}" preserve0permissions="true">
      <cmp:arfileset src="${src}"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <checkProperties dateTime="2009-07-31-20:11:13 +0200" mode="0"
                     uid="1000" gid="1000"/>
  </target>

  <target name="testRemoveLeadingSlashes" depends="setUp">
    <cmp:cpio destfile="${dest}">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     fullpath="/logo.gif"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="/logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testPreserveLeadingSlashes" depends="setUp">
    <cmp:cpio destfile="${dest}" preserveleadingslashes="true">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"
                     fullpath="/logo.gif"
                     includes="asf-logo.gif"/>
    </cmp:cpio>
    <assertResourceExists>
      <cmp:cpioentry name="/logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="logo.gif">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <!-- ACC 1.0 CPIO prevents duplicate entries -->
  <target name="fail-testAddDuplicates" depends="setUp">
    <cmp:cpio destfile="${dest}" duplicate="add">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"/>
      <cmp:zipfileset src="../resources/asf-logo.gif.zip"/>
    </cmp:cpio>
    <au:assertLogContains text="duplicate entry asf-logo.gif found, adding."
                          level="verbose"/>
  </target>

  <target name="testPreserveDuplicates" depends="setUp">
    <cmp:cpio destfile="${dest}" duplicate="preserve">
      <cmp:arfileset src="../resources/asf-logo.gif.ar"/>
      <cmp:zipfileset src="../resources/asf-logo.gif.zip"/>
    </cmp:cpio>
    <au:assertLogContains text="asf-logo.gif already added, skipping."
                          level="verbose"/>
  </target>

  <target name="testFailDuplicates" depends="setUp">
    <au:expectfailure
       message="Duplicate entry asf-logo.gif was found and the duplicate attribute is 'fail'.">
      <cmp:cpio destfile="${dest}">
        <cmp:arfileset src="../resources/asf-logo.gif.ar"/>
        <cmp:zipfileset src="../resources/asf-logo.gif.zip"/>
      </cmp:cpio>
    </au:expectfailure>
  </target>

  <target name="testFailEmpty" depends="setUp">
    <au:expectfailure
       message="No sources, nothing to do.">
      <cmp:cpio destfile="${dest}">
        <fileset dir="." includes="not-there"/>
      </cmp:cpio>
    </au:expectfailure>
  </target>

  <target name="testSkipEmpty" depends="setUp">
    <cmp:cpio destfile="${dest}" whenEmpty="skip">
      <fileset dir="." includes="not-there"/>
    </cmp:cpio>
    <au:assertLogContains text="No sources, nothing to do."
                          level="warn"/>
    <au:assertFileDoesntExist file="${dest}"/>
  </target>

  <target name="testNonFileDest" depends="setUp">
    <cmp:cpio>
      <fileset dir="." includes="ar-test.xml"/>
      <dest>
        <gzipresource>
          <file file="${dest}.gz"/>
        </gzipresource>
      </dest>
    </cmp:cpio>
    <au:assertFileExists file="${dest}.gz"/>
    <au:assertFileDoesntExist file="${dest}"/>
    <gunzip src="${dest}.gz" dest="${dest}"/>
    <cmp:uncpio src="${dest}" dest="${output}"/>
    <au:assertFilesMatch expected="ar-test.xml"
                         actual="${output}/ar-test.xml"/>
  </target>

  <target name="-prepareArchiveForModeTests" depends="setUp">
    <mkdir dir="${input}"/>
    <copy todir="${input}">
      <fileset dir="." includes="*r-test.xml,zip-test.xml"/>
    </copy>
    <cmp:cpio dest="${dest}">
      <fileset dir="${input}"/>
    </cmp:cpio>
    <copy tofile="${dest}.bak" file="${dest}"/>
    <property name="timestamp" value="2000-01-01-00:00:00 +0000"/>
    <touch datetime="${timestamp}" file="${input}/zip-test.xml"
           pattern="yyyy-MM-dd-HH:mm:ss Z"/>
    <sleep seconds="2"/>
    <touch file="${dest}.bak"/>
    <sleep seconds="2"/>
  </target>

  <target name="testCreateOfUpToDate" depends="-prepareArchiveForModeTests">
    <cmp:cpio dest="${dest}" mode="create">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogContains
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsUptodate
       src="${dest}" dest="${dest}.bak"/>
  </target>

  <target name="testForceCreateOfUpToDate"
          depends="-prepareArchiveForModeTests">
    <cmp:cpio dest="${dest}" mode="force-create">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogDoesntContain
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsOutofdate
       src="${dest}" dest="${dest}.bak"/>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="tar-test.xml">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testCreateOfOutOfDate" depends="-prepareArchiveForModeTests">
    <touch file="${input}/ar-test.xml"/>
    <cmp:cpio dest="${dest}" mode="create">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogDoesntContain
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsOutofdate
       src="${dest}" dest="${dest}.bak"/>
    <assertResourceDoesntExist>
      <cmp:cpioentry name="tar-test.xml">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceDoesntExist>
  </target>

  <target name="testReplaceOfUpToDate" depends="-prepareArchiveForModeTests">
    <cmp:cpio dest="${dest}" mode="replace">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogContains
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsUptodate
       src="${dest}" dest="${dest}.bak"/>
  </target>

  <target name="testForceReplaceOfUpToDate"
          depends="-prepareArchiveForModeTests">
    <cmp:cpio dest="${dest}" mode="force-replace">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogDoesntContain
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsOutofdate
       src="${dest}" dest="${dest}.bak"/>
    <assertResourceExists>
      <cmp:cpioentry name="tar-test.xml">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <au:assertTrue>
      <cond:islastmodified datetime="${timestamp}"
                           pattern="yyyy-MM-dd-HH:mm:ss Z">
        <cmp:cpioentry name="zip-test.xml">
          <file file="${dest}"/>
        </cmp:cpioentry>
      </cond:islastmodified>
    </au:assertTrue>
  </target>

  <target name="testReplaceOfOutOfDate" depends="-prepareArchiveForModeTests">
    <touch file="${input}/ar-test.xml"/>
    <cmp:cpio dest="${dest}" mode="replace">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogDoesntContain
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsOutofdate
       src="${dest}" dest="${dest}.bak"/>
    <assertResourceExists>
      <cmp:cpioentry name="tar-test.xml">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <au:assertTrue>
      <cond:islastmodified datetime="${timestamp}"
                           pattern="yyyy-MM-dd-HH:mm:ss Z">
        <cmp:cpioentry name="zip-test.xml">
          <file file="${dest}"/>
        </cmp:cpioentry>
      </cond:islastmodified>
    </au:assertTrue>
  </target>

  <target name="testUpdateOfUpToDate" depends="-prepareArchiveForModeTests">
    <cmp:cpio dest="${dest}" mode="update">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogContains
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsUptodate
       src="${dest}" dest="${dest}.bak"/>
  </target>

  <target name="testUpdateOfOutOfDate" depends="-prepareArchiveForModeTests">
    <touch file="${input}/ar-test.xml"/>
    <cmp:cpio dest="${dest}" mode="update">
      <fileset dir="${input}" includes="ar-test.xml,zip-test.xml"/>
    </cmp:cpio>
    <au:assertLogDoesntContain
       text="test.cpio is up-to-date, nothing to do."/>
    <au:assertDestIsOutofdate
       src="${dest}" dest="${dest}.bak"/>
    <assertResourceExists>
      <cmp:cpioentry name="tar-test.xml">
        <file file="${dest}"/>
      </cmp:cpioentry>
    </assertResourceExists>
    <au:assertFalse>
      <cond:islastmodified datetime="${timestamp}"
                           pattern="yyyy-MM-dd-HH:mm:ss Z">
        <cmp:cpioentry name="zip-test.xml">
          <file file="${dest}"/>
        </cmp:cpioentry>
      </cond:islastmodified>
    </au:assertFalse>
  </target>

</project>
