Tweak travis code to reduce test times.

This commit is contained in:
Mike Jolley 2016-12-07 18:44:18 +00:00
parent 07932b4432
commit fcf0ab0ba5
2 changed files with 40 additions and 37 deletions

View File

@ -6,8 +6,8 @@ sudo: false
php:
- 5.2
- 5.3
- 5.4
- 5.5
# - 5.4
# - 5.5
- 5.6
- 7.0
- 7.1
@ -27,35 +27,10 @@ matrix:
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:
# 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 -n ./*.php --standard=./phpcs.ruleset.xml --extensions=php
- /tmp/phpcs/scripts/phpcs -p -s -n ./**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/*.php
- /tmp/phpcs/scripts/phpcs -p -s -n ./**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/*.php
- /tmp/phpcs/scripts/phpcs -p -s -n ./**/**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/**/*.php
- /tmp/phpcs/scripts/phpcs -p -s -n ./**/**/**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/**/*.php
- bash tests/bin/travis.sh during
after_script:
- bash tests/bin/travis.sh after

View File

@ -10,19 +10,47 @@ if [ $1 == 'before' ]; then
[ $TRAVIS_PHP_VERSION == '5.3' ] && exit;
composer self-update
# Install php-coveralls to send coverage info
composer init --require=satooshi/php-coveralls:0.7.0 -n
composer install --no-interaction
## Only run on 5.6 box.
[ $TRAVIS_PHP_VERSION != '5.6' ] && $TRAVIS_PHP_VERSION && exit;
# Install CodeSniffer for WordPress Coding Standards checks. Only check once.
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
elif [ $1 == 'during' ]; then
## Only run on 5.6 box.
[ $TRAVIS_PHP_VERSION != '5.6' ] && $TRAVIS_PHP_VERSION && exit;
# 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 -n ./*.php --standard=./phpcs.ruleset.xml --extensions=php
/tmp/phpcs/scripts/phpcs -p -s -n ./**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/*.php
/tmp/phpcs/scripts/phpcs -p -s -n ./**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/*.php
/tmp/phpcs/scripts/phpcs -p -s -n ./**/**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/**/*.php
/tmp/phpcs/scripts/phpcs -p -s -n ./**/**/**/**/*.php --standard=./phpcs.ruleset.xml --extensions=php --ignore=./vendor/**/**/*.php
elif [ $1 == 'after' ]; then
# No Xdebug and therefore no coverage in PHP 5.2 or 5.3
[ $TRAVIS_PHP_VERSION == '5.2' ] && exit;
[ $TRAVIS_PHP_VERSION == '5.3' ] && exit;
# Send coverage data to coveralls
php vendor/bin/coveralls --verbose --exclude-no-stmt
## Only run on 5.6 box.
[ $TRAVIS_PHP_VERSION != '5.6' ] && $TRAVIS_PHP_VERSION && exit;
# Get scrutinizer ocular and run it
wget https://scrutinizer-ci.com/ocular.phar