test.yml 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. name: PHP test
  2. on: [push, pull_request]
  3. jobs:
  4. test:
  5. name: Test
  6. runs-on: ${{ matrix.os }}
  7. strategy:
  8. matrix:
  9. php-version: [7.4, 8.0, 8.1]
  10. os: [ubuntu-latest]
  11. steps:
  12. - name: Checkout
  13. uses: actions/checkout@v2
  14. - name: Use PHP ${{ matrix.php-version }}
  15. uses: shivammathur/setup-php@v2
  16. with:
  17. php-version: ${{ matrix.php-version }}
  18. extensions: zip, curl
  19. env:
  20. COMPOSER_TOKEN: ${{ secrets.GITHUB_TOKEN }}
  21. - name: Get composer cache directory
  22. id: composercache
  23. run: echo "::set-output name=dir::$(composer config cache-files-dir)"
  24. - name: Cache dependencies
  25. uses: actions/cache@v2
  26. with:
  27. path: ${{ steps.composercache.outputs.dir }}
  28. key: ${{ runner.os }}-php-${{ matrix.php-version }}-${{ hashFiles('**/composer.json') }}
  29. restore-keys: ${{ runner.os }}-php-${{ matrix.php-version }}-
  30. - name: Install dependencies
  31. run: |
  32. composer install --prefer-dist
  33. - name: Unit tests
  34. run: |
  35. composer run-script test