dist: trusty

language: php

sudo: false

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

matrix:
    include:
        - php: 5.4
          env: SYMFONY_VERSION=2.3.*
        - php: 5.5
          env: SYMFONY_DEPRECATIONS_HELPER=weak
        - php: 5.6
          env: SYMFONY_VERSION=2.7.* COVERAGE=true
        - php: 5.6
          env: SYMFONY_VERSION=2.8.*
        - php: 5.6
          env: SYMFONY_VERSION=3.0.*
        - php: 7.0
          env: SYMFONY_DEPRECATIONS_HELPER=weak
        - php: hhvm
          env: SYMFONY_DEPRECATIONS_HELPER=weak
    fast_finish: true

before_install:
  - if [ "$COVERAGE" != "true" ] && [ "$TRAVIS_PHP_VERSION" != "hhvm" ]; then phpenv config-rm xdebug.ini; fi
  - if [[ "$TRAVIS_PHP_VERSION" != "hhvm" ]]; then echo "memory_limit=4096M" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini; fi;

before_script:
    - composer self-update
    - if [ "$DEPENDENCIES" = "dev" ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi;
    - if [ "$SYMFONY_VERSION" != "3.0.*" ] && [ "$SYMFONY_VERSION" != "2.8.*" ] && [ "$SYMFONY_VERSION" != "2.7.*" ]; then sed -i "/dunglas\/api-bundle/d;/symfony\/serializer/d" composer.json; fi;
    - if [ "$SYMFONY_VERSION" != "" ]; then composer require "symfony/symfony:${SYMFONY_VERSION}" --no-update; fi;
    - composer update $COMPOSER_FLAGS

script:
    - if [ "$COVERAGE" == "true" ]; then phpunit --coverage-text; else phpunit; fi