name: Tests

on: [push, pull_request]

jobs:
  tests-legacy:
    name: PHP ${{ matrix.php-versions }} Tests
    runs-on: ${{ matrix.operating-system }}
    strategy:
      matrix:
        operating-system: ['ubuntu-latest']
        php-versions: ['5.4', '5.5', '5.6']

    steps:
      - uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php-versions }}
          extensions: openssl
          tools: phpunit:4.8

      - uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Run tests
        run: phpunit --coverage-clover clover.xml tests

      - uses: codecov/codecov-action@v2
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ./clover.xml

  tests-older:
    name: PHP ${{ matrix.php-versions }} Tests
    runs-on: ${{ matrix.operating-system }}
    strategy:
      matrix:
        operating-system: ['ubuntu-latest']
        php-versions: ['7.0', '7.1']

    steps:
      - uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php-versions }}
          extensions: openssl
          tools: phpunit:6.5

      - uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Run tests
        run: phpunit --coverage-clover clover.xml tests

      - uses: codecov/codecov-action@v2
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ./clover.xml

  tests-old:
    name: PHP ${{ matrix.php-versions }} Tests
    runs-on: ${{ matrix.operating-system }}
    strategy:
      matrix:
        operating-system: ['ubuntu-latest']
        php-versions: ['7.2', '7.3', '7.4']

    steps:
      - uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php-versions }}
          extensions: openssl
          tools: phpunit:8.5

      - uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Run tests
        run: phpunit --coverage-clover clover.xml tests

      - uses: codecov/codecov-action@v2
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ./clover.xml

  tests:
    name: PHP ${{ matrix.php-versions }} Tests
    runs-on: ${{ matrix.operating-system }}
    strategy:
      matrix:
        operating-system: ['ubuntu-latest']
        php-versions: ['8.0', '8.1']

    steps:
      - uses: shivammathur/setup-php@v2
        with:
          php-version: ${{ matrix.php-versions }}
          extensions: openssl
          tools: phpunit/phpunit:9.5

      - uses: actions/checkout@v3
        with:
          fetch-depth: 0

      - name: Run tests
        run: phpunit --coverage-clover clover.xml tests

      - uses: codecov/codecov-action@v2
        with:
          token: ${{ secrets.CODECOV_TOKEN }}
          files: ./clover.xml
