Repository navigation
ci: run the live GitHub tests on every pull request and push (#73) #49
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| --- | |
| name: Mutation Tests | |
| on: # yamllint disable-line rule:truthy | |
| pull_request: | |
| push: | |
| branches: [3.x] | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.head_ref || github.ref }} | |
| cancel-in-progress: ${{ github.event_name == 'pull_request' }} | |
| jobs: | |
| mutation: | |
| name: Infection | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v7 | |
| with: | |
| persist-credentials: false | |
| - name: Setup PHP | |
| uses: shivammathur/setup-php@v2 | |
| with: | |
| php-version: '8.4' | |
| coverage: xdebug | |
| ini-values: memory_limit=-1 | |
| - name: Install Composer dependencies | |
| uses: ramsey/composer-install@v3 | |
| with: | |
| dependency-versions: highest | |
| # The Infection phar is unusable with Testo: its bundled adapter calls the | |
| # unscoped \Infection\StreamWrapper\IncludeInterceptor. Infection requires | |
| # PHP 8.3+, so it is installed here instead of in require-dev. | |
| - name: Install Infection | |
| run: | | |
| composer config allow-plugins.infection/extension-installer true | |
| composer require --dev --no-interaction --no-progress -W infection/infection testo/bridge-infection | |
| - name: Run Infection | |
| run: vendor/bin/infection --threads=max --logger-github --show-mutations=0 --min-msi=60 --min-covered-msi=60 | |
| env: | |
| STRYKER_DASHBOARD_API_KEY: ${{ github.event_name == 'push' && secrets.STRYKER_DASHBOARD_API_KEY || '' }} |