Skip to content

Run tests / chore: Add temporary workaround for ThreadingDiagnoserTests::CompletedWorkItemCountIsAccurate on macos (#3101) * chore: add temporary workaround for #3098 * chore: modify precision logics #2935

Run tests / chore: Add temporary workaround for ThreadingDiagnoserTests::CompletedWorkItemCountIsAccurate on macos (#3101) * chore: add temporary workaround for #3098 * chore: modify precision logics

Run tests / chore: Add temporary workaround for ThreadingDiagnoserTests::CompletedWorkItemCountIsAccurate on macos (#3101) * chore: add temporary workaround for #3098 * chore: modify precision logics #2935

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:
# Checkout
- uses: actions/checkout@v6
# Add Windows Defender Exclusions
- uses: ./.github/actions/add-windowsdefender-exclusions
# Setup additional tools
- name: Setup additional tools for Wasm/NativeAot tests
uses: ./.github/actions/setup-additional-tools
# 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-core'
shell: cmd
run: ./build.cmd in-tests-core -e
# Report test results with unique name
- name: Report tests results
uses: dorny/test-reporter@a43b3a5f7366b97d083190328d2c652e1a8b6aa2 # v3.0.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@v7
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:
# Checkout
- uses: actions/checkout@v6
# Add Windows Defender Exclusions
- uses: ./.github/actions/add-windowsdefender-exclusions
# Setup additional tools
- name: Setup additional tools for Wasm/NativeAot tests
uses: ./.github/actions/setup-additional-tools
# 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@a43b3a5f7366b97d083190328d2c652e1a8b6aa2 # v3.0.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@v7
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
# Setup additional tools
- name: Setup additional tools for Wasm/NativeAot tests
uses: ./.github/actions/setup-additional-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@a43b3a5f7366b97d083190328d2c652e1a8b6aa2 # v3.0.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@v7
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'
arch: 'arm64'
- runs-on: 'macos-15-intel'
arch: 'x64'
steps:
- uses: actions/checkout@v6
# Setup additional tools
- name: Setup additional tools for Wasm/NativeAot tests
uses: ./.github/actions/setup-additional-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@a43b3a5f7366b97d083190328d2c652e1a8b6aa2 # v3.0.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@v7
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: 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 cspell@9.7.0
- name: Copy cSpell config
run: cp ./build/cSpell.json ./cSpell.json
- name: Run cSpell
run: cspell --config ./cSpell.json "docs/**/*.md" --no-progress