language: php

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

matrix:
    allow_failures:
        - php: 7.0
        - php: hhvm

env:
    global:
        - secure: "Sq+6bVtnPsu0mWX8DWQ+9bGAjxMcGorksUiHc4YIXEJsuDfVmVlH8tTD547IeCjDAx9MxXerZ2Z4HSjxTB70VEnJPvZMHI/EZn4Ny31YLHEthdZbV5Gd1h0TGp8VOzPKGShvGrtGBX6MvMfgpK4zuieVWbSfdKeecm8ZNLMpUd4="

before_install:
    ## Packages
    - sudo apt-get update -qq
    - sudo apt-get install -y graphviz

before_script:
    ## Composer
    - composer self-update
    - composer install --prefer-source
    ## PHPDocumentor
    - mkdir -p build/docs
    - mkdir -p build/coverage

script:
    ## PHP_CodeSniffer
    - ./vendor/bin/phpcs src/ tests/ --standard=PSR2 -n --ignore=src/PhpWord/Shared/PCLZip
    ## PHP Mess Detector
    - ./vendor/bin/phpmd src/,tests/ text ./phpmd.xml.dist --exclude pclzip.lib.php
    ## PHPUnit
    - ./vendor/bin/phpunit -c ./ --coverage-text --coverage-html ./build/coverage
    ## PHPLOC
    - ./vendor/bin/phploc src/
    ## PHPDocumentor
    - ./vendor/bin/phpdoc -q -d ./src -t ./build/docs --ignore "*/src/PhpWord/Shared/*/*" --template="responsive-twig"

after_script:
    ## PHPDocumentor
    - bash .travis_shell_after_success.sh
    ## Scrutinizer
    - wget https://scrutinizer-ci.com/ocular.phar
    - php ocular.phar code-coverage:upload --format=php-clover build/logs/clover.xml
