on:
  push:
    branches:
      - master
  pull_request:

jobs:
  test:
    runs-on: ${{ matrix.operating-system }}
    strategy:
      fail-fast: false
      matrix:
        operating-system: [ ubuntu-latest ]
        php: [ '5.4', '5.5', '5.6', '7.0', '7.1', '7.2', '7.3', '7.4', '8.0' ]
        dependencies: [ 'locked' ]

    name: PHP ${{ matrix.php }} on ${{ matrix.operating-system }} with ${{ matrix.dependencies }} dependencies

    steps:
      - uses: actions/checkout@v2
        name: Checkout repository

      - name: Setup PHP
        uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php }}

      - uses: ramsey/composer-install@v1
        with:
          dependency-versions: ${{ matrix.dependencies }}

      - name: Install PEAR
        run: |
          sudo apt-get install php-pear

      - name: Run tests
        run: |
          sudo pear install -f package.xml
          pear version
          pear run-tests -qr tests/ || { cat run-tests.log; for i in `find tests/ -name '*.out'`; do echo "$i"; cat "$i"; done; exit 1; }
