language: php

sudo: false

cache:
  directories:
    - $HOME/.composer/cache/files

matrix:
    include:
        - php: 5.6
        - php: 5.6
          env: COMPOSER_FLAGS='--prefer-lowest --prefer-stable'
        - php: 7.0
        - php: hhvm
        - php: nightly
    allow_failures:
        - php: 7.0
        - php: nightly
    fast_finish: true

before_install:
  - travis_retry composer self-update && composer --version

install:
  - travis_retry composer update $COMPOSER_FLAGS --prefer-source -n

script: vendor/bin/phpunit --verbose --coverage-clover=coverage.clover

after_script:
  - sh -c 'if [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then wget https://scrutinizer-ci.com/ocular.phar && php ocular.phar code-coverage:upload --format=php-clover coverage.clover; fi;'
