Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LinkDB: move to a proper file, add test coverage #218

Merged
merged 1 commit into from
Jun 23, 2015
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,7 @@ pagecache
composer.lock
/vendor/

# Ignore test output
# Ignore test data & output
coverage
tests/datastore.php
phpmd.html
33 changes: 26 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,23 @@
# - install/update test dependencies:
# $ composer install # 1st setup
# $ composer update
# - install Xdebug for PHPUnit code coverage reports:
# - see http://xdebug.org/docs/install
# - enable in php.ini

BIN = vendor/bin
PHP_SOURCE = index.php
MESS_DETECTOR_RULES = cleancode,codesize,controversial,design,naming,unusedcode
PHP_SOURCE = index.php application tests
PHP_COMMA_SOURCE = index.php,application,tests

all: static_analysis_summary
all: static_analysis_summary test

##
# Concise status of the project
# These targets are non-blocking: || exit 0
##

static_analysis_summary: code_sniffer_source copy_paste mess_detector_summary
@echo

##
# PHP_CodeSniffer
Expand Down Expand Up @@ -62,6 +66,7 @@ copy_paste:
# Detects PHP syntax errors, sorted by category
# Rules documentation: http://phpmd.org/rules/index.html
##
MESS_DETECTOR_RULES = cleancode,codesize,controversial,design,naming,unusedcode

mess_title:
@echo "-----------------"
Expand All @@ -70,11 +75,11 @@ mess_title:

### - all warnings
mess_detector: mess_title
@$(BIN)/phpmd $(PHP_SOURCE) text $(MESS_DETECTOR_RULES) | sed 's_.*\/__'
@$(BIN)/phpmd $(PHP_COMMA_SOURCE) text $(MESS_DETECTOR_RULES) | sed 's_.*\/__'

### - all warnings + HTML output contains links to PHPMD's documentation
mess_detector_html:
@$(BIN)/phpmd $(PHP_SOURCE) html $(MESS_DETECTOR_RULES) \
@$(BIN)/phpmd $(PHP_COMMA_SOURCE) html $(MESS_DETECTOR_RULES) \
--reportfile phpmd.html || exit 0

### - warnings grouped by message, sorted by descending frequency order
Expand All @@ -85,10 +90,24 @@ mess_detector_grouped: mess_title
### - summary: number of warnings by rule set
mess_detector_summary: mess_title
@for rule in $$(echo $(MESS_DETECTOR_RULES) | tr ',' ' '); do \
warnings=$$($(BIN)/phpmd $(PHP_SOURCE) text $$rule | wc -l); \
warnings=$$($(BIN)/phpmd $(PHP_COMMA_SOURCE) text $$rule | wc -l); \
printf "$$warnings\t$$rule\n"; \
done;

##
# PHPUnit
# Runs unitary and functional tests
# Generates an HTML coverage report if Xdebug is enabled
#
# See phpunit.xml for configuration
# https://phpunit.de/manual/current/en/appendixes.configuration.html
##
test: clean
@echo "-------"
@echo "PHPUNIT"
@echo "-------"
@$(BIN)/phpunit tests

##
# Targets for repository and documentation maintenance
##
Expand All @@ -107,4 +126,4 @@ doc: clean
htmldoc:
for file in `find doc/ -maxdepth 1 -name "*.md"`; do \
pandoc -f markdown_github -t html5 -s -c "github-markdown.css" -o doc/`basename $$file .md`.html "$$file"; \
done;
done;
2 changes: 2 additions & 0 deletions application/.htaccess
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
Allow from none
Deny from all
Loading