<?xml version="1.0"?>

<project name="ProjektName" default="dist" basedir=".">
    <property file="./build.properties" />

    <target name="prepare">
        <echo msg="Bereite Build vor..." />
        <echo msg="Verzeichnisse loeschen..." />
        <delete dir="/${build-dir}/reports" />
        <delete dir="/${build-dir}/src" />       
      <echo msg="Erstelle Directory REPORTS" />
        <mkdir dir="/${build-dir}/reports" />    
      <echo msg="Erstelle Directory RELEASE" />
        <mkdir dir="/${build-dir}/release" />
        <phingcall target="phpunit" />
    </target>

    <target name="export" depends="prepare">
        <echo msg="Projekt aus SVN exportieren..." />
        <svnexport
           svnpath="svn"
           username="${user}"
           password="${password}"
           repositoryurl="${repository}"
           todir="${build-dir}/src"
        />
    </target>
    
    <target name="phpunit">
      <echo msg="Starte PHPUNIT..." />
        <phpunit haltonfailure="true" printsummary="true">
          <formatter todir="/${build-dir}/reports" type="xml"/>
          <batchtest>
            <fileset dir="test">
              <include name="*" />
              <include name="testSuite.php"/>
            </fileset>
          </batchtest>
     </phpunit>
    </target>

    <target name="build">
        <tstamp>
         <format property="check.date.time" pattern="%Y%m%d-%H%M%S" locale="en_US"/>
        </tstamp>
      <echo msg="Loesche nicht benoetigte Verzeichnisse und Dateien..." />
    		<delete dir="/${build-dir}/src/sql/" includeemptydirs="true" verbose="true" failonerror="true" />
    		<delete dir="/${build-dir}/src/test/" includeemptydirs="true" verbose="true" failonerror="true" />
    		<delete dir="/${build-dir}/src/doc/" includeemptydirs="true" verbose="true" failonerror="true" />
       	<delete file="/${build-dir}/src/build.xml" />
    		<delete file="/${build-dir}/src/build.properties" />
        <mkdir dir="/${build-dir}/release/PROJEKT-${check.date.time}" />
        <copy todir="/${build-dir}/release/PROJEKT-${check.date.time}">
            <fileset dir="/${build-dir}/src">
                <include name="**" />
            </fileset>
        </copy>
        
        <echo msg="Packen..." />
        <zip destfile="/${build-dir}/release/PROJEKT_${check.date.time}.zip"
             basedir="/${build-dir}/release/PROJEKT-${check.date.time}" />
    </target>

    <target name="dist" depends="export">
        <phingcall target="build" />
    </target>
</project>