language: php

branches:
  except:
    - /^bugfix\/.*$/
    - /^feature\/.*$/
    - /^optimization\/.*$/

sudo: false

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

matrix:
  include:
    - php: 5.5
      env: SYMFONY_VERSION='2.7.*'
    - php: 5.6
      env: SYMFONY_VERSION='2.8.*'
    - php: 7.1
      env: SYMFONY_VERSION='3.3.*'
    - php: 7.1
      env: DEPS=dev SYMFONY_VERSION='3.4.*'
    - php: 7.1
      env: DEVS=dev SYMFONY_VERSION='4.0.*'
  allow_failures:
    - php: 7.1
      env: SYMFONY_VERSION='4.0.x-dev'

before_install:
  - composer self-update
  - mkdir -p ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d && echo "memory_limit=-1" >> ~/.phpenv/versions/$(phpenv version-name)/etc/conf.d/travis.ini
  - if [ "$DEPS" = 'dev' ]; then perl -pi -e 's/^}$/,"minimum-stability":"dev"}/' composer.json; fi;
  - if [ "$SYMFONY_VERSION" != "" ]; then composer require --no-update "symfony/symfony:${SYMFONY_VERSION}"; fi;

install:
  - composer install --no-progress

before_script:
  - export PATH=./vendor/bin:$PATH

script:
  - phpspec run -f pretty --no-interaction
  - behat --strict
