language: php
php:
  - 7.1
  - 7.2
  - 7.3
  - 7.4

matrix:
  fast_finish: true

install:
  - composer require --dev phpstan/phpstan:^0.12

before_script:
  - composer install

script:
  - ./bin/php-cs-fixer fix lib/ --dry-run --diff
  - php ./bin/phpstan.phar analyse -c phpstan.neon lib tests
  - ./bin/phpunit --configuration tests/phpunit.xml --coverage-clover=coverage.xml
  
after_success:
  - bash <(curl -s https://codecov.io/bash)

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