<?xml version="1.0" encoding="UTF-8"?> <project name="wallabag" default="build"> <target name="build" depends="clean,prepare,phpunit"/> <target name="prepare-mysql" depends="clean,db_mysql,prepare"/> <target name="prepare-sqlite" depends="clean,db_sqlite,prepare"/> <target name="prepare-pgsql" depends="clean,db_pgsql,prepare"/> <target name="clean" description="Cleanup build artifacts"> <delete dir="${basedir}/var/cache"/> </target> <target name="prepare" description="Prepare for build"> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="doctrine:database:drop"/> <arg value="--force"/> <arg value="--env=test"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="doctrine:database:create"/> <arg value="--env=test"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="doctrine:schema:create"/> <arg value="--env=test"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="cache:clear"/> <arg value="--env=test"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="doctrine:fixtures:load"/> <arg value="--no-interaction"/> <arg value="--env=test"/> </exec> </target> <target name="db_mysql" description="Run test for MySQL"> <delete dir="${basedir}/app/config/parameters.yml"/> <exec executable="cp"> <arg value="${basedir}/app/config/tests/parameters_test.mysql.yml"/> <arg value="${basedir}/app/config/parameters_test.yml"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="cache:clear"/> <arg value="--env=test"/> </exec> </target> <target name="db_sqlite" description="Run test for SQLite"> <delete dir="${basedir}/app/config/parameters.yml"/> <exec executable="cp"> <arg value="${basedir}/app/config/tests/parameters_test.sqlite.yml"/> <arg value="${basedir}/app/config/parameters_test.yml"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="cache:clear"/> <arg value="--env=test"/> </exec> </target> <target name="db_pgsql" description="Run test for PostgreSQL"> <delete dir="${basedir}/app/config/parameters.yml"/> <exec executable="cp"> <arg value="${basedir}/app/config/tests/parameters_test.pgsql.yml"/> <arg value="${basedir}/app/config/parameters_test.yml"/> </exec> <exec executable="php"> <arg value="${basedir}/bin/console"/> <arg value="cache:clear"/> <arg value="--env=test"/> </exec> </target> <target name="phpunit" description="Run unit tests with PHPUnit + HTML Coverage"> <exec executable="phpunit" failonerror="true"> <arg value="--coverage-html"/> <arg value="build/coverage"/> </exec> </target> </project>