<?xml version="1.0" encoding="UTF-8"?>
<project name= "Chamilo LMS" default= "build" >
<target name= "build"
depends="prepare,phpunit,pdepend,phpdoc"/>
<target name= "clean" description= "Cleanup build artifacts" >
<delete dir= "${basedir}/../tests/api" />
<delete dir= "${basedir}/../tests/code-browser" />
<delete dir= "${basedir}/../tests/coverage" />
<delete dir= "${basedir}/../tests/logs" />
<delete dir= "${basedir}/../tests/pdepend" />
</target>
<target name= "prepare" depends= "clean" description= "Prepare for build" >
<mkdir dir= "${basedir}/../tests/api" />
<mkdir dir= "${basedir}/../tests/code-browser" />
<mkdir dir= "${basedir}/../tests/coverage" />
<mkdir dir= "${basedir}/../tests/logs" />
<mkdir dir= "${basedir}/../tests/pdepend" />
<mkdir dir= "${basedir}/../tests/phpdox" />
</target>
<target name= "lint" description= "Perform syntax check of sourcecode files" >
<apply executable= "php" failonerror= "true" >
<arg value= "-l" />
<fileset dir= "${basedir}/../main" >
<include name= "**/*.php" />
</fileset>
<fileset dir= "${basedir}" >
<include name= "**/*.php" />
</fileset>
</apply>
</target>
<target name= "pdepend" description= "Calculate software metrics using PHP_Depend" >
<exec executable= "pdepend" >
<arg value= "--jdepend-xml=${basedir}/tests/logs/jdepend.xml" />
<arg value= "--jdepend-chart=${basedir}/tests/pdepend/dependencies.svg" />
<arg value= "--overview-pyramid=${basedir}/tests/pdepend/overview-pyramid.svg" />
<arg path= "${basedir}" />
</exec>
</target>
<target name= "phpmd"
description="Perform project mess detection using PHPMD and print human readable output. Intended for usage on the command line before committing.">
<exec executable= "phpmd" >
<arg path= "${basedir}" />
<arg value= "text" />
<arg value= "${basedir}/tests/phpmd.xml" />
</exec>
</target>
<target name= "phpmd-ci" description= "Perform project mess detection using PHPMD creating a log file for the continuous integration server" >
<exec executable= "phpmd" >
<arg path= "${basedir}" />
<arg value= "xml" />
<arg value= "${basedir}/tests/phpmd.xml" />
<arg value= "--reportfile" />
<arg value= "${basedir}/tests/logs/pmd.xml" />
</exec>
</target>
<target name= "phpcs"
description="Find coding standard violations using PHP_CodeSniffer and print human readable output. Intended for usage on the command line before committing.">
<exec executable= "phpcs" >
<arg value= "--standard=${basedir}/tests/phpcs.xml" />
<arg path= "${basedir}" />
</exec>
</target>
<target name= "phpcs-ci" description= "Find coding standard violations using PHP_CodeSniffer creating a log file for the continuous integration server" >
<exec executable= "phpcs" output= "/dev/null" >
<arg value= "--report=checkstyle" />
<arg value= "--report-file=${basedir}/tests/logs/checkstyle.xml" />
<arg value= "--standard=${basedir}/tests/phpcs.xml" />
<arg path= "${basedir}" />
</exec>
</target>
<!-- target name="simpletest" description="Run simpletests">
<simpletest >
<formatter type= "plain" />
<fileset dir= "${basedir}/tests" >
<include name= "test_suite.php" />
</fileset>
</simpletest>
</target-->
<target name= "phpunit" description= "Run unit tests with PHPUnit" depends= "lint" >
<!-- exec executable="phpunit" failonerror="true" -->
<exec executable= "phpunit" >
<arg line= "-c ${basedir}/phpunit/phpunit.xml" />
</exec>
</target>
<target name= "phpdoc" description= "Generate API documentation" >
<exec executable= "phpdoc" >
<arg line= "-d ${basedir}/../ -t ${basedir}/logs/docs -ti ChamiloLMS -i ${basedir}/../archive/*,${basedir}/../home/*,${basedir}/../main/inc/entity/*,${basedir}/../main/inc/lib/symfony/*,${basedir}/../main/inc/lib/phpdocx/*,${basedir}/../main/inc/lib/phpqrcode/*,${basedir}/../main/inc/lib/mpdf/*,${basedir}/../main/inc/lib/internationalization_database/transliteration/*,${basedir}/../main/inc/lib/phpmailer/*,${basedir}/../main/inc/lib/htmlpurifier/*,${basedir}/../main/inc/lib/fckeditor/*,${basedir}/../main/inc/lib/formvalidator/*,${basedir}/../main/upload/users/*,${basedir}/../main/lang/*,${basedir}/../courses/*,.htaccess -ct covers,assert" />
</exec>
</target>
<target name= "phpcb" description= "Aggregate tool output with PHP_CodeBrowser" >
<exec executable= "phpcb" >
<arg value= "--log" />
<arg path= "${basedir}/tests/logs" />
<arg value= "--source" />
<arg path= "${basedir}" />
<arg value= "--output" />
<arg path= "${basedir}/tests/code-browser" />
</exec>
</target>
</project>