Skip to content

Run tests / Fix #2581: Copy WarningsAsErrors setting to generated project (#2976) Add WarningsAsErrors to SettingsWeWantToCopy array in CsProjGenerator so that NuGet restore warnings configured in the source project are preserved in the generated benchmark project and fail the build. Added test WarningsAsErrorsSettingGetsCopied() to verify the fix. Co-authored-by: Shrinidhi203 <[email protected]> #2309

Run tests / Fix #2581: Copy WarningsAsErrors setting to generated project (#2976) Add WarningsAsErrors to SettingsWeWantToCopy array in CsProjGenerator so that NuGet restore warnings configured in the source project are preserved in the generated benchmark project and fail the build. Added test WarningsAsErrorsSettingGetsCopied() to verify the fix. Co-authored-by: Shrinidhi203 <[email protected]>

Run tests / Fix #2581: Copy WarningsAsErrors setting to generated project (#2976) Add WarningsAsErrors to SettingsWeWantToCopy array in CsProjGenerator so that NuGet restore warnings configured in the source project are preserved in the generated benchmark project and fail the build. Added test WarningsAsErrorsSettingGetsCopied() to verify the fix. Co-authored-by: Shrinidhi203 <[email protected]> #2309

Workflow file for this run

name: run-tests
run-name: Run tests / ${{ github.event.head_commit.message }}
on:
pull_request:
push:
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.head_ref || github.ref || github.run_id }}
cancel-in-progress: true
jobs:
test-windows-core:
strategy:
matrix:
os: [windows-latest, windows-11-arm]
runs-on: ${{ matrix.os }}
steps:
- name: Add Windows Defender Exclusions
shell: powershell
run: |
Add-MpPreference -ExclusionPath $env:GITHUB_WORKSPACE
Add-MpPreference -ExclusionPath $env:TEMP
- uses: actions/checkout@v6
# Build and Test
- name: Run task 'build'
shell: cmd
run: ./build.cmd build
- name: Run task 'in-tests-core'
shell: cmd
run: ./build.cmd in-tests-core -e
# Report test results with unique name
- name: Report tests results
uses: dorny/test-reporter@fe45e9537387dac839af0d33ba56eed8e24189e8 # v2.3.0
if: always()
with:
name: test-windows-core-${{ matrix.os }}
path: "**/*.trx"
reporter: dotnet-trx
# Upload Artifacts with Unique Name
- name: Upload test results
uses: actions/upload-artifact@v6
if: always()
with:
name: test-windows-core-trx-${{ github.run_id }}-${{ matrix.os }}
path: "**/*.trx"
test-windows-full:
strategy:
matrix:
os: [windows-latest, windows-11-arm]
runs-on: ${{ matrix.os }}
steps:
- name: Add Windows Defender Exclusions
shell: powershell
run: |
Add-MpPreference -ExclusionPath $env:GITHUB_WORKSPACE
Add-MpPreference -ExclusionPath $env:TEMP
- uses: actions/checkout@v6
# Build and Test
- name: Run task 'build'
shell: cmd
run: ./build.cmd build
- name: Run task 'unit-tests'
shell: cmd
run: ./build.cmd unit-tests -e
- name: Run task 'analyzer-tests'
shell: cmd
run: ./build.cmd analyzer-tests -e
- name: Run task 'in-tests-full'
shell: cmd
run: ./build.cmd in-tests-full -e
# Report test results with unique name
- name: Report tests results
uses: dorny/test-reporter@fe45e9537387dac839af0d33ba56eed8e24189e8 # v2.3.0
if: always()
with:
name: test-windows-full-${{ matrix.os }}
path: "**/*.trx"
reporter: dotnet-trx
# Upload Artifacts with Unique Name
- name: Upload test results
uses: actions/upload-artifact@v6
if: always()
with:
name: test-windows-full-trx-${{ github.run_id }}-${{ matrix.os }}
path: "**/*.trx"
test-linux:
strategy:
matrix:
os: [ubuntu-latest, ubuntu-24.04-arm]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v6
# Set up the environment
- name: Set up Clang
uses: egor-tensin/setup-clang@ef434b41eb33a70396fb336b1bae39c76d740c3d # v1.4
with:
version: latest
platform: x64
- name: Set up zlib-static
run: sudo apt-get install -y libkrb5-dev
- name: Set up node
uses: actions/setup-node@v6
with:
node-version: "24"
- name: Set up v8
run: npm install jsvu -g && jsvu --os=linux64 --engines=v8 && echo "$HOME/.jsvu/bin" >> $GITHUB_PATH
- name: Install wasm-tools workload
run: ./build.cmd install-wasm-tools
# Build and Test
- name: Run task 'build'
run: ./build.cmd build
- name: Run task 'analyzer-tests'
run: ./build.cmd analyzer-tests -e
- name: Run task 'unit-tests'
run: ./build.cmd unit-tests -e
- name: Run task 'in-tests-core'
run: ./build.cmd in-tests-core -e
# Report test results with unique name
- name: Report tests results
uses: dorny/test-reporter@fe45e9537387dac839af0d33ba56eed8e24189e8 # v2.3.0
if: always()
with:
name: test-linux-${{ matrix.os }}
path: "**/*.trx"
reporter: dotnet-trx
# Upload Artifacts with Unique Name
- name: Upload test results
uses: actions/upload-artifact@v6
if: always()
with:
name: test-linux-trx-${{ github.run_id }}-${{ matrix.os }}
path: "**/*.trx"
test-macos:
name: test-macos (${{ matrix.os.arch }})
runs-on: ${{ matrix.os.runs-on }}
strategy:
matrix:
os:
- runs-on: 'macos-latest'
jsvu-os: 'mac64arm'
arch: 'arm64'
- runs-on: 'macos-15-intel'
jsvu-os: 'mac64'
arch: 'x64'
steps:
- uses: actions/checkout@v6
- name: Set up node
uses: actions/setup-node@v6
with:
node-version: "24"
- name: Set up v8
run: npm install jsvu -g && jsvu --os=${{ matrix.os.jsvu-os }} --engines=v8 && echo "$HOME/.jsvu/bin" >> $GITHUB_PATH
- name: Install wasm-tools workload
run: ./build.cmd install-wasm-tools
# Build and Test
- name: Run task 'build'
run: ./build.cmd build
- name: Run task 'analyzer-tests'
run: ./build.cmd analyzer-tests -e
- name: Run task 'unit-tests'
run: ./build.cmd unit-tests -e
- name: Run task 'in-tests-core'
run: ./build.cmd in-tests-core -e
# Report test results with unique name
- name: Report tests results
uses: dorny/test-reporter@fe45e9537387dac839af0d33ba56eed8e24189e8 # v2.3.0
if: always()
with:
name: test-macos(${{ matrix.os.arch }})
path: "**/*.trx"
reporter: dotnet-trx
# Upload Artifacts with Unique Name
- name: Upload test results
uses: actions/upload-artifact@v6
if: always()
with:
name: test-macos(${{ matrix.os.arch }})-trx-${{ github.run_id }}
path: "**/*.trx"
test-pack:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- name: Set up Clang
uses: egor-tensin/setup-clang@v1
with:
version: latest
platform: x64
- name: Set up zlib-static
run: sudo apt-get install -y libkrb5-dev
- name: Run task 'pack'
run: ./build.cmd pack
spellcheck-docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
name: Setup node
with:
node-version: "24"
- name: Install cSpell
run: npm install -g [email protected]
- name: Copy cSpell config
run: cp ./build/cSpell.json ./cSpell.json
- name: Run cSpell
run: cspell --config ./cSpell.json "docs/**/*.md" --no-progress