<?xml version="1.0" encoding="UTF-8"?>
<project name="PHP Domain Parser" default="build">

    <property file="build.properties" />

    <target name="clean" description="Clean build path">
        <delete dir="${project.basedir}/build" />
        <mkdir dir="${project.basedir}/build" />
        <mkdir dir="${project.basedir}/build/coverage" />
        <mkdir dir="${project.basedir}/build/docs" />
    </target>

    <target name="phpunit" description="Running unit tests">
        <exec
            passthru="${passthru}"
            dir="${project.basedir}"
            command="phpunit" />
    </target>

    <target name="php-cs-fixer" description="PHP Codings Standards fixer">
        <exec
            passthru="${passthru}"
            command="php-cs-fixer --verbose fix" />
    </target>

    <target name="phpdoc" description="Generate API documentation">
        <exec
            passthru="${passthru}"
            command="phpdoc
            -d ${project.basedir}/src
            -t ${project.basedir}/build/docs
            --title='PHP Domain Parser'
            --defaultpackagename='Pdp'
            --template='responsive-twig'
            --force" />
    </target>

    <target name="build" description="Build app">
        <phingCall target="clean" />
        <phingCall target="php-cs-fixer" />
        <phingCall target="phpunit" />
        <phingCall target="phpdoc" />
    </target>
</project>
