Skip to content

Bump rojopolis/spellcheck-github-actions from 0.50.0 to 0.51.0 (#2658) #731

Bump rojopolis/spellcheck-github-actions from 0.50.0 to 0.51.0 (#2658)

Bump rojopolis/spellcheck-github-actions from 0.50.0 to 0.51.0 (#2658) #731

name: mutation-tests
on:
push:
branches: [ main, release/* ]
pull_request:
branches: [ main, release/* ]
workflow_dispatch:
env:
DOTNET_CLI_TELEMETRY_OPTOUT: true
DOTNET_GENERATE_ASPNET_CERTIFICATE: false
DOTNET_NOLOGO: true
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
DOTNET_SYSTEM_CONSOLE_ALLOW_ANSI_COLOR_REDIRECTION: 1
NUGET_XMLDOC_MODE: skip
TERM: xterm
permissions:
contents: read
jobs:
mutations:
name: 'mutations-${{ matrix.name }}'
runs-on: ubuntu-latest
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
include:
- name: core
target: Core
- name: extensions
target: Extensions
- name: legacy
target: Legacy
- name: ratelimiting
target: RateLimiting
- name: testing
target: Testing
steps:
- name: Checkout code
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0
show-progress: false
- name: Setup .NET SDKs
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
with:
dotnet-version: |
8.0.x
- name: Setup .NET SDK
uses: actions/setup-dotnet@67a3573c9a986a3f9c594539f4ab511d57bb3ce9 # v4.3.1
- name: Run mutation tests for ${{ matrix.target }}
shell: pwsh
env:
MUTATION_TARGET: 'MutationTests${{ matrix.target }}'
SKIP_POLLY_ANALYZERS: 'true'
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
run: ./build.ps1 -Target ${env:MUTATION_TARGET}
- name: Upload Mutation Report
if: ${{ !cancelled() }}
uses: actions/upload-artifact@ea165f8d65b6e75b540449e92b4886f43607fa02 # v4.6.2
with:
name: mutation-report-${{ matrix.name }}
path: ./artifacts/mutation-report
mutation-tests:
needs: [ mutations ]
if: ${{ always() }}
runs-on: ubuntu-latest
env:
MUTATIONS_SUCCESS: ${{ !contains(needs.*.result, 'failure') }}
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
steps:
- run: |
if [ -z "${STRYKER_DASHBOARD_API_KEY}" ]
then
DASHBOARD_URL="https://dashboard.stryker-mutator.io/reports/github.com/${GITHUB_REPOSITORY}/${GITHUB_REF_NAME}"
printf "# Mutations Dashboard\n\n[View report :notebook:](%s)\n" "${DASHBOARD_URL}" >> "${GITHUB_STEP_SUMMARY}"
fi
if [ "$MUTATIONS_SUCCESS" == "true" ]
then
echo "Mutation tests successful ✅"
else
echo "::error title=Mutation Tests::One or more mutation test runs failed ❌"
exit 1
fi