mirror of
https://github.com/ovh/php-ovh.git
synced 2023-11-05 03:20:26 +01:00
c13758720b
As I already mentioned in the #35 issue, I think it's more suitable to use a PHP build tool instead of a JS one. I don't tell that Grunt is not a powerful tool but it's a complicated installation process to be able to run tests. Phing is required as a composer package and can be run directly after the composer install. Examples: ``` vendor/bin/phing vendor/bin/phing test vendor/bin/phing clean vendor/bin/phing phplint vendor/bin/phing phpcs vendor/bin/phing phpunit vendor/bin/phing phpunit -Donly.units=true #The travis test process ``` The only difference here is the watch process. Phing doesn't have that kind of feature. It can be emulated with different tasks but require a lot more work. I think that PR is the first step, maybe we can go further if necessary. Signed-off-by: Stéphane HULARD <s.hulard@chstudio.fr>
115 lines
4.3 KiB
XML
115 lines
4.3 KiB
XML
<?xml version="1.0"?>
|
|
<project name="ovh/ovh" default="all">
|
|
<property name="base" value="${project.basedir}/" />
|
|
<property environment="env" />
|
|
|
|
<if>
|
|
<available file="${base}build.properties" property="" />
|
|
<then>
|
|
<property file="${base}build.properties" override="true" />
|
|
</then>
|
|
</if>
|
|
|
|
<!--##########################################################################################################-->
|
|
<target name="help">
|
|
<echo message="${phing.project.name} on [${git.branch}]" />
|
|
<echo message=" Available commands are:" />
|
|
<echo message=" test -> Run unit tests" />
|
|
<echo message=" clean -> Clean current environment" />
|
|
<echo message=" server -> Launch PHP built-in server" />
|
|
<echo message=" watch -> Run precommit task on every file changed" />
|
|
<echo message=" precommit -> Source code validation before commit" />
|
|
<echo message=" Specific tools tasks:" />
|
|
<echo message=" phpcs -> Run PHP Code Sniffer" />
|
|
<echo message=" phplint -> Run PHP Lint" />
|
|
<echo message=" phpdocs -> Run PHP Documentor" />
|
|
<echo message=" phpunit -> Run PHPUnit" />
|
|
</target>
|
|
<!--##########################################################################################################-->
|
|
<target name="test" description="Run unit tests">
|
|
<phingcall target="phpunit" />
|
|
</target>
|
|
<target name="clean" description="Clean current environment">
|
|
<delete dir="docs" includeemptydirs="true" verbose="true" failonerror="true" />
|
|
</target>
|
|
<target name="precommit" description="Source code validation before commit">
|
|
<phingcall target="phplint" />
|
|
<phingcall target="phpcs" />
|
|
<phingcall target="phpunit" />
|
|
</target>
|
|
<target name="all" description="Make a full integration check">
|
|
<phingcall target="phplint" />
|
|
<phingcall target="phpcs" />
|
|
<phingcall target="phpunit" />
|
|
<phingcall target="phpdocs" />
|
|
</target>
|
|
<!--##########################################################################################################-->
|
|
<target name="phpcs" description="Run PHP Code Sniffer">
|
|
<phpcodesniffer
|
|
standard="PSR2"
|
|
format="summary"
|
|
>
|
|
<fileset dir=".">
|
|
<include name="src/**/*.php"/>
|
|
<include name="test/**/*.php"/>
|
|
</fileset>
|
|
</phpcodesniffer>
|
|
</target>
|
|
<target name="phpcbf" description="Run PHP Code Sniffer">
|
|
<exec command="vendor/bin/phpcbf --standard=PSR2 src" logoutput="true" />
|
|
</target>
|
|
<target name="phplint" description="Run PHP Lint">
|
|
<phplint deprecatedAsError="true">
|
|
<fileset dir=".">
|
|
<include name="src/**/*.php"/>
|
|
<include name="test/**/*.php"/>
|
|
</fileset>
|
|
</phplint>
|
|
</target>
|
|
<target name="phpdocs" description="Run PHP Documentor" depends="clean">
|
|
<if>
|
|
<not><available file="docs" /></not>
|
|
<then>
|
|
<mkdir dir="docs" />
|
|
</then>
|
|
</if>
|
|
|
|
<phpdoc2 destdir="docs">
|
|
<fileset dir="src">
|
|
<include name="**/*.php" />
|
|
</fileset>
|
|
</phpdoc2>
|
|
</target>
|
|
<target name="phpunit" description="Run PHPUnit">
|
|
<if>
|
|
<and>
|
|
<isset property="only.units" />
|
|
<equals arg1="${only.units}" arg2="true" />
|
|
</and>
|
|
<then>
|
|
<fileset dir="tests" id="tests">
|
|
<include name="ApiTest.php"/>
|
|
</fileset>
|
|
</then>
|
|
<else>
|
|
<fileset dir="tests" id="tests">
|
|
<include name="**/*.php"/>
|
|
</fileset>
|
|
</else>
|
|
</if>
|
|
|
|
<phpunit
|
|
haltonfailure="true"
|
|
haltonerror="true"
|
|
bootstrap="tests/bootstrap.php"
|
|
printsummary="true"
|
|
>
|
|
<formatter type="plain" usefile="false"/>
|
|
<batchtest>
|
|
<fileset refid="tests" />
|
|
</batchtest>
|
|
</phpunit>
|
|
</target>
|
|
<!--##########################################################################################################-->
|
|
</project>
|