2014-09-01 06:03:52 +00:00
|
|
|
language: php
|
2019-08-05 12:29:09 +00:00
|
|
|
dist: xenial
|
2014-09-01 06:03:52 +00:00
|
|
|
|
2019-08-05 12:52:43 +00:00
|
|
|
# Since Xenial services are not started by default, we need to instruct it below to start.
|
|
|
|
services:
|
|
|
|
- xvfb
|
|
|
|
- mysql
|
2019-11-26 20:34:00 +00:00
|
|
|
- docker
|
|
|
|
- docker-compose
|
2019-08-05 12:52:43 +00:00
|
|
|
|
2015-02-03 16:43:01 +00:00
|
|
|
sudo: false
|
|
|
|
|
2019-03-19 13:46:24 +00:00
|
|
|
cache:
|
|
|
|
directories:
|
|
|
|
- vendor
|
|
|
|
- $HOME/.composer/cache
|
|
|
|
|
2017-08-22 10:02:32 +00:00
|
|
|
# Test main supported versions of PHP against latest WP.
|
2015-02-03 16:43:01 +00:00
|
|
|
php:
|
|
|
|
- 5.6
|
2015-12-08 18:26:14 +00:00
|
|
|
- 7.0
|
2017-12-11 15:56:47 +00:00
|
|
|
- 7.1
|
2018-12-05 18:00:05 +00:00
|
|
|
- 7.2
|
2018-12-19 13:32:51 +00:00
|
|
|
- 7.3
|
2019-12-02 14:15:38 +00:00
|
|
|
- 7.4
|
2015-02-03 16:43:01 +00:00
|
|
|
|
|
|
|
env:
|
2017-11-13 19:22:46 +00:00
|
|
|
- WP_VERSION=latest WP_MULTISITE=0
|
2015-02-03 16:43:01 +00:00
|
|
|
|
2019-06-13 09:28:18 +00:00
|
|
|
# Additional tests against stable PHP (min version is 5.6)
|
2017-11-13 17:53:42 +00:00
|
|
|
# and code coverage report.
|
2014-09-01 06:03:52 +00:00
|
|
|
matrix:
|
2017-11-13 17:53:42 +00:00
|
|
|
fast_finish: true
|
2014-09-01 06:03:52 +00:00
|
|
|
include:
|
2019-06-26 16:02:31 +00:00
|
|
|
- name: "Coding standard check"
|
2019-12-02 14:50:36 +00:00
|
|
|
php: 7.4
|
2018-12-05 18:00:05 +00:00
|
|
|
env: WP_VERSION=latest WP_MULTISITE=0 RUN_PHPCS=1
|
2019-11-26 20:34:00 +00:00
|
|
|
- name: "E2E tests"
|
2019-12-02 14:50:36 +00:00
|
|
|
php: 7.4
|
2020-02-03 13:50:39 +00:00
|
|
|
script:
|
2020-02-05 16:16:00 +00:00
|
|
|
- composer require wp-cli/i18n-command
|
2019-12-03 21:24:58 +00:00
|
|
|
- npm run build
|
2019-12-15 13:09:29 +00:00
|
|
|
- docker-compose up --build -d
|
2019-12-15 22:55:39 +00:00
|
|
|
- bash tests/bin/run-e2e-CI.sh
|
2019-12-15 17:11:46 +00:00
|
|
|
after_script:
|
|
|
|
- docker-compose down -v
|
2018-12-19 13:08:32 +00:00
|
|
|
- name: "Unit tests code coverage"
|
2019-12-02 14:50:36 +00:00
|
|
|
php: 7.4
|
2017-11-13 19:24:52 +00:00
|
|
|
env: WP_VERSION=latest WP_MULTISITE=0 RUN_CODE_COVERAGE=1
|
2019-01-16 11:06:35 +00:00
|
|
|
- name: "WooCommerce unit tests using WordPress nightly"
|
2019-12-02 14:50:36 +00:00
|
|
|
php: 7.4
|
2019-01-16 11:06:35 +00:00
|
|
|
env: WP_VERSION=nightly WP_MULTISITE=0
|
2017-11-13 17:53:42 +00:00
|
|
|
allow_failures:
|
2019-12-02 14:50:36 +00:00
|
|
|
- php: 7.4
|
2018-11-19 19:46:50 +00:00
|
|
|
env: WP_VERSION=latest WP_MULTISITE=0 RUN_CODE_COVERAGE=1
|
2014-09-01 06:03:52 +00:00
|
|
|
|
|
|
|
before_script:
|
2019-03-19 11:14:42 +00:00
|
|
|
- export PATH="$HOME/.composer/vendor/bin:$PATH"
|
2018-10-16 13:36:25 +00:00
|
|
|
- |
|
|
|
|
# Remove Xdebug for a huge performance increase:
|
|
|
|
if [ -f ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/xdebug.ini ]; then
|
|
|
|
phpenv config-rm xdebug.ini
|
|
|
|
else
|
|
|
|
echo "xdebug.ini does not exist"
|
|
|
|
fi
|
2020-02-03 14:56:48 +00:00
|
|
|
- npm install
|
2019-06-26 16:20:47 +00:00
|
|
|
- composer install --no-dev
|
2019-03-19 11:14:42 +00:00
|
|
|
- |
|
2019-06-13 09:28:18 +00:00
|
|
|
# Install WP Test suite, install PHPUnit globally:
|
2019-03-19 12:30:54 +00:00
|
|
|
if [[ ! -z "$WP_VERSION" ]]; then
|
2019-03-19 11:14:42 +00:00
|
|
|
bash tests/bin/install.sh woocommerce_test root '' localhost $WP_VERSION
|
2019-07-19 01:46:28 +00:00
|
|
|
composer global require "phpunit/phpunit=5.7.*|7.5.*"
|
2019-03-19 11:14:42 +00:00
|
|
|
fi
|
2019-08-05 12:52:43 +00:00
|
|
|
- "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_99.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :99 -ac -screen 0 1280x1024x16"
|
2014-09-01 06:03:52 +00:00
|
|
|
|
2016-08-27 14:18:14 +00:00
|
|
|
script:
|
2017-10-05 16:09:39 +00:00
|
|
|
- bash tests/bin/phpunit.sh
|
2017-10-10 13:50:22 +00:00
|
|
|
- bash tests/bin/phpcs.sh
|
2014-09-07 18:53:33 +00:00
|
|
|
|
|
|
|
after_script:
|
2014-09-22 19:15:16 +00:00
|
|
|
- bash tests/bin/travis.sh after
|
2017-11-20 19:18:29 +00:00
|
|
|
|
|
|
|
# Specifies that Travis should create builds for master and release branches and also tags.
|
|
|
|
branches:
|
|
|
|
only:
|
|
|
|
- master
|
|
|
|
- /^\d+\.\d+(\.\d+)?(-\S*)?$/
|
|
|
|
- /^release\//
|