language: php

php:
  - 5.4
  - 5.5
  - 5.6
  - 7.0
  - hhvm

matrix:
  fast_finish: true
  include:
    - php: 5.4
      env: COMPOSER_FLAGS='--prefer-lowest --prefer-stable' SYMFONY_DEPRECATIONS_HELPER=weak
    - php: 5.6
      env: DEPENDENCIES=dev
  allow_failures:
    - php: 7.0
    - php: hhvm

env:
  global:
    # Force the mink test server to use PHP 5.6 as HHVM does not provide the builtin webserver
    - MINK_PHP_BIN=~/.phpenv/versions/5.6/bin/php
    # Force the mink test server to bin on IPv4, as PhantomJS resolves localhost as IPv4 while PHP seems to prefer resolving it as IPv6 on Travis
    - MINK_HOST=127.0.0.1:8002
    # Avoid restarting the browser api at the end of tests (see bin/run_tests.sh)
    - MINK_STOP_BROWSER=1

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

before_install:
  - composer self-update
  - if [ "$DEPENDENCIES" = "dev" ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi;

install:
  - composer update $COMPOSER_FLAGS

before_script:
  - mkdir -p /tmp/jcalderonzumba/phantomjs

script:
  - bin/run-tests.sh
