| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100 |
- name: Run tests
- on:
- push:
- pull_request:
- schedule:
- - cron: '0 0 * * *'
- jobs:
- php-tests:
- runs-on: ${{ matrix.os }}
- strategy:
- matrix:
- php: [8.0, 7.4, 7.3, 7.2]
- laravel: [6.*, 5.8.*, 5.7.*, 5.6.*, 5.5.*]
- dependency-version: [prefer-lowest, prefer-stable]
- os: [ubuntu-latest, windows-latest]
- include:
- - laravel: 6.*
- testbench: 4.*
- - laravel: 5.8.*
- testbench: 3.8.*
- - laravel: 5.7.*
- testbench: 3.7.*
- - laravel: 5.6.*
- testbench: 3.6.*
- - laravel: 5.5.*
- testbench: 3.5.*
- exclude:
- - laravel: 5.8.*
- php: 8.0
- - laravel: 5.7.*
- php: 8.0
- - laravel: 5.6.*
- php: 8.0
- - laravel: 5.5.*
- php: 8.0
- - laravel: 5.7.*
- php: 7.4
- - laravel: 5.6.*
- php: 7.4
- - laravel: 5.5.*
- php: 7.4
- name: P${{ matrix.php }} - L${{ matrix.laravel }} - ${{ matrix.dependency-version }} - ${{ matrix.os }}
- steps:
- - name: Checkout code
- uses: actions/checkout@v2
- - name: Setup PHP
- uses: shivammathur/setup-php@v2
- with:
- php-version: ${{ matrix.php }}
- extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd, fileinfo
- coverage: none
- - name: Install dependencies
- run: |
- composer require "laravel/framework:${{ matrix.laravel }}" "orchestra/testbench:${{ matrix.testbench }}" --no-interaction --no-update
- composer update --${{ matrix.dependency-version }} --prefer-dist --no-interaction --no-suggest
- - name: Execute tests
- run: vendor/bin/phpunit
- - name: Send Slack notification
- uses: 8398a7/action-slack@v2
- if: ${{ failure() && !! env.SLACK_WEBHOOK }}
- with:
- status: ${{ job.status }}
- author_name: ${{ github.actor }}
- env:
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- js-tests:
- runs-on: ubuntu-latest
- name: JavaScript tests
- steps:
- - name: Checkout code
- uses: actions/checkout@v1
- - name: Install dependencies
- run: yarn install --non-interactive
- - name: Execute tests
- run: yarn run jest
- - name: Send Slack notification
- uses: 8398a7/action-slack@v2
- if: ${{ failure() && !! env.SLACK_WEBHOOK }}
- with:
- status: ${{ job.status }}
- author_name: ${{ github.actor }}
- env:
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
|