test.yml 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. name: Test
  2. on: [ pull_request, push ]
  3. jobs:
  4. test:
  5. runs-on: ubuntu-20.04
  6. strategy:
  7. max-parallel: 15
  8. fail-fast: false
  9. matrix:
  10. coverage: [ 'none' ]
  11. php-versions: [ '7.2', '7.3', '7.4', '8.0' ]
  12. exclude:
  13. - php-versions: '8.0'
  14. include:
  15. - php-versions: '8.0'
  16. coverage: 'xdebug'
  17. name: PHP ${{ matrix.php-versions }}
  18. steps:
  19. - name: Checkout
  20. uses: actions/checkout@master
  21. - name: Setup PHP
  22. uses: shivammathur/setup-php@v2
  23. with:
  24. php-version: ${{ matrix.php-versions }}
  25. extensions: json, mbstring, xdebug
  26. coverage: ${{ matrix.coverage }}
  27. - name: Install dependencies
  28. run: composer update --no-interaction --prefer-dist --no-suggest --prefer-stable
  29. - name: Lint composer.json
  30. run: composer validate --strict
  31. - name: Run Tests
  32. run: vendor/bin/phpunit -v
  33. - name: Upload coverage results
  34. uses: codecov/codecov-action@v1
  35. if: matrix.coverage != 'none'