| 
language: php
# Temporarily use legacy infrastructure until Travis resolves MySQL issues with their containerized infrastructure.
# @see https://github.com/travis-ci/travis-ci/issues/6842
sudo: required
git:
  depth: 2
cache:
  directories:
    - $HOME/.composer/cache
matrix:
  fast_finish: true
  include:
    - php: 7.0
      env: DB=mariadb
      addons:
        mariadb: 10.2
    - php: 7.1
      env: DB=mariadb
      addons:
        mariadb: 10.2
    - php: 7.2
      env: DB=mariadb
      addons:
        mariadb: 10.3
    - php: 7.3
      env: DB=mariadb
      addons:
        mariadb: 10.3
    - php: 7.4
      env: DB=mariadb
      addons:
        mariadb: 10.3
services:
  - mysql
before_script:
  - php --version
  - travis_retry wget https://scrutinizer-ci.com/ocular.phar
  - travis_retry mysql -u root -h 127.0.0.1 -e 'CREATE DATABASE mysql_test;'
  - travis_retry mysql -u root -h 127.0.0.1 -e 'USE mysql_test; CREATE TABLE test_page ( page_id int(16) NOT NULL auto_increment, page_template varchar(255), page_type varchar(255), PRIMARY KEY (page_id)) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;'
  - travis_retry composer self-update
  - travis_retry composer require satooshi/php-coveralls:1.0.0
  - travis_retry composer install --no-interaction --prefer-source
  - if [ "$(phpenv version-name)" == 7.3 ]; then travis_retry composer require phpstan/phpstan; fi
  - composer dump-autoload -o
script:
  - mkdir -p build/logs
  - php vendor/bin/phpunit --verbose -c phpunit.xml
  - if [ "$(phpenv version-name)" == 7.3 ]; then php vendor/bin/phpstan analyse; fi
after_script:
  - php vendor/bin/coveralls -v
  - php ocular.phar code-coverage:upload --format=php-clover build/logs/clover.xml
  - bash <(curl -s https://codecov.io/bash)
 |