Page MenuHomeDevCentral

D510.id1230.diff
No OneTemporary

D510.id1230.diff

diff --git a/.gitignore b/.gitignore
--- a/.gitignore
+++ b/.gitignore
@@ -6,3 +6,7 @@
php.ini
public/css/
*.log
+
+#CI
+build/
+cache.properties
diff --git a/build.xml b/build.xml
new file mode 100644
--- /dev/null
+++ b/build.xml
@@ -0,0 +1,273 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project name="name-of-project" default="full-build">
+ <!-- By default, we assume all tools to be on the $PATH -->
+ <property name="composer" value="composer"/>
+ <property name="pdepend" value="pdepend"/>
+ <property name="phpcpd" value="phpcpd"/>
+ <property name="phpcs" value="phpcs"/>
+ <property name="phpdox" value="phpdox"/>
+ <property name="phploc" value="phploc"/>
+ <property name="phpmd" value="phpmd"/>
+ <property name="phpunit" value="phpunit"/>
+
+ <!-- Use this when the tools are managed by Composer in ${basedir}/vendor/bin
+ <property name="pdepend" value="${basedir}/vendor/bin/pdepend"/>
+ <property name="phpcpd" value="${basedir}/vendor/bin/phpcpd"/>
+ <property name="phpcs" value="${basedir}/vendor/bin/phpcs"/>
+ <property name="phpdox" value="${basedir}/vendor/bin/phpdox"/>
+ <property name="phploc" value="${basedir}/vendor/bin/phploc"/>
+ <property name="phpmd" value="${basedir}/vendor/bin/phpmd"/>
+ <property name="phpunit" value="${basedir}/vendor/bin/phpunit"/> -->
+
+ <target name="full-build"
+ depends="prepare,static-analysis,phpunit,phpdox,-check-failure"
+ description="Performs static analysis, runs the tests, and generates project documentation"/>
+
+ <target name="full-build-parallel"
+ depends="prepare,static-analysis-parallel,phpunit,phpdox,-check-failure"
+ description="Performs static analysis (executing the tools in parallel), runs the tests, and generates project documentation"/>
+
+ <target name="quick-build"
+ depends="prepare,lint,phpunit-no-coverage"
+ description="Performs a lint check and runs the tests (without generating code coverage reports)"/>
+
+ <target name="static-analysis"
+ depends="lint,phploc-ci,pdepend,phpmd-ci,phpcs-ci,phpcpd-ci"
+ description="Performs static analysis" />
+
+ <!-- Adjust the threadCount attribute's value to the number of CPUs -->
+ <target name="static-analysis-parallel"
+ description="Performs static analysis (executing the tools in parallel)">
+ <parallel threadCount="2">
+ <sequential>
+ <antcall target="pdepend"/>
+ <antcall target="phpmd-ci"/>
+ </sequential>
+ <antcall target="lint"/>
+ <antcall target="phpcpd-ci"/>
+ <antcall target="phpcs-ci"/>
+ <antcall target="phploc-ci"/>
+ </parallel>
+ </target>
+
+ <target name="clean"
+ unless="clean.done"
+ description="Cleanup build artifacts">
+ <delete dir="${basedir}/build/api"/>
+ <delete dir="${basedir}/build/coverage"/>
+ <delete dir="${basedir}/build/logs"/>
+ <delete dir="${basedir}/build/pdepend"/>
+ <delete dir="${basedir}/build/phpdox"/>
+ <property name="clean.done" value="true"/>
+ </target>
+
+ <target name="prepare"
+ unless="prepare.done"
+ depends="clean"
+ description="Prepare for build">
+ <mkdir dir="${basedir}/build/api"/>
+ <mkdir dir="${basedir}/build/coverage"/>
+ <mkdir dir="${basedir}/build/logs"/>
+ <mkdir dir="${basedir}/build/pdepend"/>
+ <mkdir dir="${basedir}/build/phpdox"/>
+ <exec executable="${composer}" failonerror="true">
+ <arg value="install"/>
+ </exec>
+ <property name="prepare.done" value="true"/>
+ </target>
+
+ <target name="lint"
+ unless="lint.done"
+ description="Perform syntax check of sourcecode files">
+ <apply executable="php" taskname="lint">
+ <arg value="-l" />
+
+ <fileset dir="${basedir}/app">
+ <include name="**/*.php" />
+ <modified />
+ </fileset>
+
+ <fileset dir="${basedir}/config">
+ <include name="**/*.php" />
+ <modified />
+ </fileset>
+
+ <fileset dir="${basedir}/tests">
+ <include name="**/*.php" />
+ <modified />
+ </fileset>
+ </apply>
+
+ <property name="lint.done" value="true"/>
+ </target>
+
+ <target name="phploc"
+ unless="phploc.done"
+ description="Measure project size using PHPLOC and print human readable output. Intended for usage on the command line.">
+ <exec executable="${phploc}" taskname="phploc">
+ <arg value="--count-tests" />
+ <arg path="${basedir}/app" />
+ <arg path="${basedir}/tests" />
+ </exec>
+
+ <property name="phploc.done" value="true"/>
+ </target>
+
+ <target name="phploc-ci"
+ unless="phploc.done"
+ depends="prepare"
+ description="Measure project size using PHPLOC and log result in CSV and XML format. Intended for usage within a continuous integration environment.">
+ <exec executable="${phploc}" taskname="phploc">
+ <arg value="--count-tests" />
+ <arg value="--log-csv" />
+ <arg path="${basedir}/build/logs/phploc.csv" />
+ <arg value="--log-xml" />
+ <arg path="${basedir}/build/logs/phploc.xml" />
+ <arg path="${basedir}/app" />
+ <arg path="${basedir}/tests" />
+ </exec>
+
+ <property name="phploc.done" value="true"/>
+ </target>
+
+ <target name="pdepend"
+ unless="pdepend.done"
+ depends="prepare"
+ description="Calculate software metrics using PHP_Depend and log result in XML format. Intended for usage within a continuous integration environment.">
+ <exec executable="${pdepend}" taskname="pdepend">
+ <arg value="--jdepend-xml=${basedir}/build/logs/jdepend.xml" />
+ <arg value="--jdepend-chart=${basedir}/build/pdepend/dependencies.svg" />
+ <arg value="--overview-pyramid=${basedir}/build/pdepend/overview-pyramid.svg" />
+ <arg path="${basedir}/app" />
+ </exec>
+
+ <property name="pdepend.done" value="true"/>
+ </target>
+
+ <target name="phpmd"
+ unless="phpmd.done"
+ description="Perform project mess detection using PHPMD and print human readable output. Intended for usage on the command line before committing.">
+ <exec executable="${phpmd}" taskname="phpmd">
+ <arg path="${basedir}/app" />
+ <arg value="text" />
+ <arg path="${basedir}/ruleset.xml" />
+ </exec>
+
+ <property name="phpmd.done" value="true"/>
+ </target>
+
+ <target name="phpmd-ci"
+ unless="phpmd.done"
+ depends="prepare"
+ description="Perform project mess detection using PHPMD and log result in XML format. Intended for usage within a continuous integration environment.">
+ <exec executable="${phpmd}" taskname="phpmd">
+ <arg path="${basedir}/app" />
+ <arg value="xml" />
+ <arg path="${basedir}/ruleset.xml" />
+ <arg value="--reportfile" />
+ <arg path="${basedir}/build/logs/pmd.xml" />
+ </exec>
+
+ <property name="phpmd.done" value="true"/>
+ </target>
+
+ <target name="phpcs"
+ unless="phpcs.done"
+ 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}" taskname="phpcs">
+ <arg value="--standard=PSR1" />
+ <arg value="--extensions=php" />
+ <arg value="--ignore=autoload.php" />
+ <arg path="${basedir}/app" />
+ <arg path="${basedir}/tests" />
+ </exec>
+
+ <property name="phpcs.done" value="true"/>
+ </target>
+
+ <target name="phpcs-ci"
+ unless="phpcs.done"
+ depends="prepare"
+ description="Find coding standard violations using PHP_CodeSniffer and log result in XML format. Intended for usage within a continuous integration environment.">
+ <exec executable="${phpcs}" output="/dev/null" taskname="phpcs">
+ <arg value="--report=checkstyle" />
+ <arg value="--report-file=${basedir}/build/logs/checkstyle.xml" />
+ <arg value="--standard=PSR1" />
+ <arg value="--extensions=php" />
+ <arg value="--ignore=autoload.php" />
+ <arg path="${basedir}/app" />
+ <arg path="${basedir}/tests" />
+ </exec>
+
+ <property name="phpcs.done" value="true"/>
+ </target>
+
+ <target name="phpcpd"
+ unless="phpcpd.done"
+ description="Find duplicate code using PHPCPD and print human readable output. Intended for usage on the command line before committing.">
+ <exec executable="${phpcpd}" taskname="phpcpd">
+ <arg path="${basedir}/app" />
+ </exec>
+
+ <property name="phpcpd.done" value="true"/>
+ </target>
+
+ <target name="phpcpd-ci"
+ unless="phpcpd.done"
+ depends="prepare"
+ description="Find duplicate code using PHPCPD and log result in XML format. Intended for usage within a continuous integration environment.">
+ <exec executable="${phpcpd}" taskname="phpcpd">
+ <arg value="--log-pmd" />
+ <arg path="${basedir}/build/logs/pmd-cpd.xml" />
+ <arg path="${basedir}/app" />
+ </exec>
+
+ <property name="phpcpd.done" value="true"/>
+ </target>
+
+ <target name="phpunit"
+ unless="phpunit.done"
+ depends="prepare"
+ description="Run unit tests with PHPUnit">
+ <exec executable="${phpunit}" resultproperty="result.phpunit" taskname="phpunit">
+ <arg value="--configuration"/>
+ <arg path="${basedir}/phpunit.xml"/>
+ </exec>
+
+ <property name="phpunit.done" value="true"/>
+ </target>
+
+ <target name="phpunit-no-coverage"
+ unless="phpunit.done"
+ depends="prepare"
+ description="Run unit tests with PHPUnit (without generating code coverage reports)">
+ <exec executable="${phpunit}" failonerror="true" taskname="phpunit">
+ <arg value="--configuration"/>
+ <arg path="${basedir}/phpunit.xml"/>
+ <arg value="--no-coverage"/>
+ </exec>
+
+ <property name="phpunit.done" value="true"/>
+ </target>
+
+ <target name="phpdox"
+ unless="phpdox.done"
+ depends="phploc-ci,phpcs-ci,phpmd-ci"
+ description="Generate project documentation using phpDox">
+ <exec executable="${phpdox}" dir="${basedir}/build" taskname="phpdox">
+ <arg value="--file"/>
+ <arg path="${basedir}/phpdox.xml"/>
+ </exec>
+ <property name="phpdox.done" value="true"/>
+ </target>
+
+ <target name="-check-failure">
+ <fail message="PHPUnit did not finish successfully">
+ <condition>
+ <not>
+ <equals arg1="${result.phpunit}" arg2="0"/>
+ </not>
+ </condition>
+ </fail>
+ </target>
+</project>
diff --git a/composer.json b/composer.json
--- a/composer.json
+++ b/composer.json
@@ -12,10 +12,14 @@
"laravel/socialite": "^2.0"
},
"require-dev": {
+ "ext-xsl": "*",
"fzaninotto/faker": "~1.4",
"mockery/mockery": "0.9.*",
- "phpunit/phpunit": "~4.0",
+ "pdepend/pdepend" : "@stable",
+ "phpmd/phpmd" : "@stable",
"phpspec/phpspec": "~2.1",
+ "phpunit/phpunit": "~4.0",
+ "squizlabs/php_codesniffer": "2.*",
"symfony/dom-crawler": "~3.0",
"symfony/css-selector": "~3.0"
},
diff --git a/phpdox.xml b/phpdox.xml
new file mode 100644
--- /dev/null
+++ b/phpdox.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8" ?>
+<phpdox xmlns="http://xml.phpdox.net/config">
+ <project name="Notifications" source="${basedir}/app" workdir="${basedir}/build/phpdox">
+ <collector backend="parser" publiconly="false">
+ <include mask="*.php" />
+ </collector>
+ <generator output="${basedir}/build">
+ <enrich base="${basedir}/build">
+ <source type="git">
+ <git binary="git" />
+ </source>
+ <source type="phploc">
+ <file name="logs/phploc.xml" />
+ </source>
+ <source type="checkstyle">
+ <file name="logs/checkstyle.xml" />
+ </source>
+ <source type="pmd">
+ <file name="logs/pmd.xml" />
+ </source>
+ <source type="phpunit">
+ <coverage path="logs/coverage" />
+ </source>
+ </enrich>
+ <build engine="html" output="api">
+ <file extension="html" />
+ </build>
+ </generator>
+ </project>
+</phpdox>
\ No newline at end of file
diff --git a/ruleset.xml b/ruleset.xml
new file mode 100644
--- /dev/null
+++ b/ruleset.xml
@@ -0,0 +1,18 @@
+<?xml version="1.0"?>
+<ruleset name="Nasqueron PHPMD rule set"
+ xmlns="http://pmd.sf.net/ruleset/1.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+ xsi:schemaLocation="http://pmd.sf.net/ruleset/1.0.0
+ http://pmd.sf.net/ruleset_xml_schema.xsd"
+ xsi:noNamespaceSchemaLocation="
+ http://pmd.sf.net/ruleset_xml_schema.xsd">
+ <description>
+ The PHPMD rule set for Nasqueron projects.
+ </description>
+
+ <rule ref="rulesets/unusedcode.xml" />
+ <rule ref="rulesets/naming.xml/BooleanGetMethodName" />
+ <rule ref="rulesets/naming.xml/ConstantNamingConventions" />
+ <rule ref="rulesets/naming.xml/ConstructorWithNameAsEnclosingClass" />
+ <rule ref="rulesets/cleancode.xml/BooleanArgumentFlag" />
+</ruleset>

File Metadata

Mime Type
text/plain
Expires
Sun, Nov 17, 01:49 (21 h, 13 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
2248477
Default Alt Text
D510.id1230.diff (12 KB)

Event Timeline