language: php

env:
  global:
    - COMPOSER_ROOT_VERSION=4.0.x-dev

matrix:
  include:
    - php: 5.6
      env: DB=MYSQL PHPCS_TEST=1 PHPUNIT_TEST=1
    - php: 7.0
      env: DB=MYSQL PHPUNIT_TEST=1
    - php: 7.1
      env: DB=MYSQL PHPUNIT_COVERAGE_TEST=1

before_script:
  # Init PHP
  - phpenv rehash
  - phpenv config-rm xdebug.ini
  - echo 'memory_limit = 2048M' >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini

  # Install composer dependencies
  - composer install --prefer-dist
  - composer require --prefer-dist --no-update silverstripe/framework:4.0.x-dev silverstripe/cms:4.0.x-dev silverstripe/admin:1.0.x-dev silverstripe/versioned:1.0.x-dev silverstripe-themes/simple:~3.2
  - composer update

script:
  - if [[ $PHPUNIT_TEST ]]; then vendor/bin/phpunit; fi
  - if [[ $PHPUNIT_COVERAGE_TEST ]]; then phpdbg -qrr vendor/bin/phpunit --coverage-clover=coverage.xml; fi
  - if [[ $PHPCS_TEST ]]; then vendor/bin/phpcs code/ tests/; fi

after_success:
  - if [[ $PHPUNIT_COVERAGE_TEST ]]; then bash <(curl -s https://codecov.io/bash) -f coverage.xml; fi

language: php

env:
  global:
    - COMPOSER_ROOT_VERSION=4.0.x-dev

matrix:
  include:
    - php: 5.6
      env: DB=MYSQL PHPCS_TEST=1 PHPUNIT_TEST=1
    - php: 7.0
      env: DB=MYSQL PHPUNIT_TEST=1
    - php: 7.1
      env: DB=MYSQL PHPUNIT_COVERAGE_TEST=1

before_script:
  # Init PHP
  - phpenv rehash
  - phpenv config-rm xdebug.ini
  - echo 'memory_limit = 2048M' >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini

  # Install composer dependencies
  - composer install --prefer-dist
  - composer require --prefer-dist --no-update silverstripe/recipe-cms:1.0.x-dev silverstripe-themes/simple:~3.2
  - composer update

script:
  - if [[ $PHPUNIT_TEST ]]; then vendor/bin/phpunit; fi
  - if [[ $PHPUNIT_COVERAGE_TEST ]]; then phpdbg -qrr vendor/bin/phpunit --coverage-clover=coverage.xml; fi
  - if [[ $PHPCS_TEST ]]; then vendor/bin/phpcs code/ tests/; fi

after_success:
  - if [[ $PHPUNIT_COVERAGE_TEST ]]; then bash <(curl -s https://codecov.io/bash) -f coverage.xml; fi

Use CMS recipe in Travis configuration
Use CMS recipe in Travis configuration
