language: php sudo: false # Test main supported versions of PHP and HHVM against latest WP. 5.2 is min supported version. php: - 5.2 - 5.3 - 5.4 - 5.5 - 5.6 - 7.0 - hhvm env: - WP_VERSION=latest WP_MULTISITE=0 # Additonal tests against stable PHP (min recommended version is 5.6) and past supported versions of WP. matrix: include: - php: 5.6 env: WP_VERSION=latest WP_MULTISITE=1 before_script: - bash tests/bin/install.sh woocommerce_test root '' localhost $WP_VERSION - bash tests/bin/travis.sh before # Install CodeSniffer for WordPress Coding Standards checks. - git clone -b master --depth 1 https://github.com/squizlabs/PHP_CodeSniffer.git /tmp/phpcs # Install WordPress Coding Standards. - git clone -b master --depth 1 https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards.git /tmp/sniffs # Install PHP Compatibility sniffs. - git clone -b master --depth 1 https://github.com/wimg/PHPCompatibility.git /tmp/sniffs/PHPCompatibility # Set install path for PHPCS sniffs. # @link https://github.com/squizlabs/PHP_CodeSniffer/blob/4237c2fc98cc838730b76ee9cee316f99286a2a7/CodeSniffer.php#L1941 - /tmp/phpcs/scripts/phpcs --config-set installed_paths /tmp/sniffs # After CodeSniffer install you should refresh your path. - phpenv rehash script: # Search for PHP syntax errors. - find . \( -name '*.php' -not -path "./vendor/*" \) -exec php -lf {} \; # Run PHPUnit tests. - phpunit -c phpunit.xml.dist # WordPress Coding Standards. # @link https://github.com/WordPress-Coding-Standards/WordPress-Coding-Standards # @link http://pear.php.net/package/PHP_CodeSniffer/ # -p flag: Show progress of the run. # -s flag: Show sniff codes in all reports. # -v flag: Print verbose output. # -n flag: Do not print warnings. (shortcut for --warning-severity=0) # --standard: Use WordPress as the standard. # --extensions: Only sniff PHP files. - /tmp/phpcs/scripts/phpcs -p -s -v -n ./*.php --standard=./phpcs.ruleset.xml --extensions=php - /tmp/phpcs/scripts/phpcs -p -s -v -n ./**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/*.php - /tmp/phpcs/scripts/phpcs -p -s -v -n ./**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/*.php - /tmp/phpcs/scripts/phpcs -p -s -v -n ./**/**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/**/*.php after_script: - bash tests/bin/travis.sh after