From bc685cf587d81a83329d8e949e004bc05e561b86 Mon Sep 17 00:00:00 2001 From: Vincent Letourneau Date: Thu, 29 Mar 2018 10:05:40 +0200 Subject: [PATCH] Add PHP Mess Detector --- .travis.yml | 5 +++-- Makefile | 7 +++++++ README.md | 7 +++++++ web/app/composer.json.dist | 7 ++++--- 4 files changed, 21 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index a5becab..8ec1978 100644 --- a/.travis.yml +++ b/.travis.yml @@ -19,11 +19,12 @@ before_script: - sleep 2m script: - - sudo make gen-certs - sudo make apidoc - - sudo make test + - sudo make gen-certs - sudo make mysql-dump - sudo make mysql-restore + - sudo make phpmd + - sudo make test after_script: - sudo make docker-stop \ No newline at end of file diff --git a/Makefile b/Makefile index 1148421..b18f227 100644 --- a/Makefile +++ b/Makefile @@ -20,6 +20,7 @@ help: @echo " logs Follow log output" @echo " mysql-dump Create backup of whole database" @echo " mysql-restore Restore backup from whole database" + @echo " phpmd Analyse the API with PHP Mess Detector" @echo " test Test application" init: @@ -66,6 +67,12 @@ mysql-dump: mysql-restore: @docker exec -i $(shell docker-compose ps -q mysqldb) mysql -u"$(MYSQL_ROOT_USER)" -p"$(MYSQL_ROOT_PASSWORD)" < $(MYSQL_DUMPS_DIR)/db.sql 2>/dev/null +phpmd: + @docker-compose exec -T php \ + ./app/vendor/bin/phpmd \ + ./app/src \ + text cleancode,codesize,controversial,design,naming,unusedcode + test: code-sniff @docker-compose exec -T php ./app/vendor/bin/phpunit --colors=always --configuration ./app/ @make resetOwner diff --git a/README.md b/README.md index 69d1e29..edb4bb0 100644 --- a/README.md +++ b/README.md @@ -237,6 +237,7 @@ When developing, you can use [Makefile](https://en.wikipedia.org/wiki/Make_(soft | logs | Follow log output | | mysql-dump | Create backup of whole database | | mysql-restore | Restore backup from whole database | +| phpmd | Analyse the API with PHP Mess Detector | | test | Test application with phpunit | ### Examples @@ -287,6 +288,12 @@ sudo docker-compose exec -T php ./app/vendor/bin/phpunit --colors=always --confi sudo docker-compose exec -T php ./app/vendor/bin/phpcs -v --standard=PSR2 ./app/src ``` +### Analyzing source code with [PHP Mess Detector](https://phpmd.org/) + +```sh +sudo docker-compose exec -T php ./app/vendor/bin/phpmd ./app/src text cleancode,codesize,controversial,design,naming,unusedcode +``` + ### Checking installed PHP extensions ```sh diff --git a/web/app/composer.json.dist b/web/app/composer.json.dist index 6214d91..276080e 100644 --- a/web/app/composer.json.dist +++ b/web/app/composer.json.dist @@ -3,10 +3,11 @@ }, "require-dev": { - "squizlabs/php_codesniffer": "3.*", - "phpunit/phpunit": "^7.0", "apigen/apigen": "dev-master", - "roave/better-reflection": "dev-master#c87d856" + "phpmd/phpmd": "@stable", + "phpunit/phpunit": "^7.0", + "roave/better-reflection": "dev-master#c87d856", + "squizlabs/php_codesniffer": "3.*" }, "autoload": { "psr-4": {