Skip to content

Commit 425a6d8

Browse files
committed
Try phpstan-mutant-killer-infection-runner
1 parent ee742f9 commit 425a6d8

File tree

5 files changed

+2213
-41
lines changed

5 files changed

+2213
-41
lines changed

.github/workflows/continuous-integration.yml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -184,6 +184,60 @@ jobs:
184184
INFECTION_BADGE_API_KEY: ${{ secrets.INFECTION_BADGE_API_KEY }}
185185
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
186186

187+
mutation-tests-phpstan:
188+
name: "Mutation tests with PHPStan"
189+
190+
runs-on: ${{ matrix.operating-system }}
191+
192+
strategy:
193+
matrix:
194+
dependencies:
195+
- "locked"
196+
php-version:
197+
- "8.4"
198+
operating-system:
199+
- "ubuntu-latest"
200+
201+
steps:
202+
- name: "Checkout"
203+
uses: "actions/checkout@v4"
204+
205+
- name: "Install PHP"
206+
uses: "shivammathur/[email protected]"
207+
with:
208+
coverage: "xdebug"
209+
php-version: "${{ matrix.php-version }}"
210+
extensions: intl, sodium
211+
ini-values: memory_limit=-1, zend.assertions=1
212+
213+
- name: "Install dependencies"
214+
uses: "ramsey/[email protected]"
215+
with:
216+
dependency-versions: "${{ matrix.dependencies }}"
217+
218+
- name: "Install CI dependencies"
219+
uses: "ramsey/[email protected]"
220+
with:
221+
dependency-versions: "${{ matrix.dependencies }}"
222+
working-directory: "tools"
223+
custom-cache-suffix: "ci"
224+
225+
- name: "Warmup PHPStan"
226+
run: "tools/vendor/bin/phpstan analyse --memory-limit=-1"
227+
228+
- name: "Infection"
229+
run: "tools/vendor/bin/phpstan-mutant-killer-infection-runner --phpstan-config phpstan.neon --log log.txt --threads=$(nproc)"
230+
env:
231+
INFECTION_BADGE_API_KEY: ${{ secrets.INFECTION_BADGE_API_KEY }}
232+
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
233+
234+
- uses: actions/upload-artifact@v4
235+
if: ${{ !cancelled() }}
236+
with:
237+
name: log.txt
238+
path: log.txt
239+
if-no-files-found: error
240+
187241
compatibility:
188242
name: "Test Compatibility"
189243

0 commit comments

Comments
 (0)