language: php
php:
- 5.6
- 7.0
env:
global:
# PHP Code Sniffer special rules
- R_CLASS="Squiz.Classes.ValidClassName" # must use CamleClasName
- R_CONST="Generic.NamingConventions.UpperCaseConstantName" # const must UPPERCASE
- R_FILE="PSR1.Files.SideEffects" # a file declare , or executes logic, not both
- R_LINE="Generic.Files.LineLength" #
- R_METHOD="PSR1.Methods.CamelCapsMethodName" # must use camleMethodName
- R_NS="PSR1.Classes.ClassDeclaration" # class must use Namespace
- CS_INGNORE="" # ingore Files
matrix:
#strict mode to check formatting
- STRICT=true
# exclude some special or unsupported conventions
- STRICT=false CS_INGNORE="dialog.php"
#allow failures
matrix:
allow_failures:
- env: STRICT=true
#install dependence
install:
- composer install --prefer-dist --verbose
#init the env to exclude
before_script:
# STRICT mode only exclude Namespace and LineLength
- if [[ "$STRICT" == "true" ]];then
export CS_EXCLUDE="$R_LINE,$R_NS";
else
export CS_EXCLUDE="$R_CLASS,$R_CONST,$R_FILE,$R_LINE,$R_METHOD,$R_NS";
fi
- echo $CS_EXCLUDE
# check formatting and Syntax
script:
- ./vendor/bin/phpcs components
--standard=PSR2
--exclude="$CS_EXCLUDE"
--ignore="$CS_INGNORE"
--colors
--extensions=php
|