42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Makefile
		
	
	
	
	
	
.DEFAULT_GOAL := help
 | 
						|
 | 
						|
help:
 | 
						|
	@echo ""
 | 
						|
	@echo "Available tasks:"
 | 
						|
	@echo "    lint     Run linter and code style checker"
 | 
						|
	@echo "    unit     Run unit tests and generate coverage"
 | 
						|
	@echo "    static   Run static analysis"
 | 
						|
	@echo "    test     Run linter, static analysis and unit tests"
 | 
						|
	@echo "    watch    Run above when a source file changes"
 | 
						|
	@echo "    deps     Install latest dependencies"
 | 
						|
	@echo "    lowdeps  Install lowest allowed dependencies"
 | 
						|
	@echo "    all      Install dependencies and run all tests"
 | 
						|
	@echo ""
 | 
						|
 | 
						|
deps:
 | 
						|
	composer update --prefer-dist
 | 
						|
 | 
						|
lowdeps:
 | 
						|
	composer update --prefer-lowest --prefer-stable --prefer-dist
 | 
						|
 | 
						|
lint:
 | 
						|
	vendor/bin/phplint . --exclude=vendor/
 | 
						|
	vendor/bin/phpcs -p --standard=PSR2 --extensions=php --encoding=utf-8 --ignore=*/vendor/*,*/benchmarks/* .
 | 
						|
 | 
						|
unit:
 | 
						|
	vendor/bin/phpunit --coverage-text --coverage-clover=coverage.xml --coverage-html=./report/
 | 
						|
 | 
						|
static:
 | 
						|
	vendor/bin/phpstan analyse src --level max -c phpstan.neon
 | 
						|
 | 
						|
watch:
 | 
						|
	find . -name "*.php" -not -path "./vendor/*" -o -name "*.json" -not -path "./vendor/*" | entr -c make test
 | 
						|
 | 
						|
test: lint static unit
 | 
						|
 | 
						|
travis: lint static unit
 | 
						|
 | 
						|
all: deps test
 | 
						|
 | 
						|
.PHONY: help deps lint test watch all
 |