name: Tests on: push: pull_request: schedule: - cron: '0 0 * * *' jobs: ci: runs-on: ${{ matrix.os }} strategy: matrix: os: [ubuntu-latest, macos-latest, windows-latest] php: ['8.1', '8.2'] dependency-version: [prefer-lowest, prefer-stable] parallel: ['', '--parallel'] name: PHP ${{ matrix.php }} - ${{ matrix.os }} - ${{ matrix.dependency-version }} - ${{ matrix.parallel }} steps: - name: Checkout uses: actions/checkout@v2 - name: Setup PHP uses: shivammathur/setup-php@v2 with: php-version: ${{ matrix.php }} tools: composer:v2 coverage: none - name: Setup Problem Matches run: | echo "::add-matcher::${{ runner.tool_cache }}/php.json" echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json" - name: Install PHP dependencies run: composer update --${{ matrix.dependency-version }} --no-interaction --no-progress --ansi - name: Unit Tests run: composer test:unit - name: Unit Tests run: test:parallel if: ${{ false }} # Parallel's not yet supported. - name: Integration Tests run: composer test:integration