Skip to content

Add AnalyzerTests "end to end" test for usage analyzers, to confirm that expected diagnostics are present #532

Add AnalyzerTests "end to end" test for usage analyzers, to confirm that expected diagnostics are present

Add AnalyzerTests "end to end" test for usage analyzers, to confirm that expected diagnostics are present #532

Workflow file for this run

# ------------------------------------------------------------------------------
# <auto-generated>
#
# This code was generated.
#
# - To turn off auto-generation set:
#
# [GitHubActions (AutoGenerate = false)]
#
# - To trigger manual generation invoke:
#
# nuke --generate-configuration GitHubActions_BuildAndPack --host GitHubActions
#
# </auto-generated>
# ------------------------------------------------------------------------------
name: BuildAndPack
on:
push:
branches:
- master
- main
tags:
- '*'
pull_request:
branches:
- '*'
jobs:
build-and-test:
strategy:
matrix:
include:
- os: windows
vm: windows-latest
- os: linux
vm: ubuntu-latest
- os: macos
vm: macos-15
env:
MSBuildEnableWorkloadResolver: false
DOTNET_SYSTEM_GLOBALIZATION_INVARIANT: "true"
name: ${{ matrix.os}}
runs-on: ${{ matrix.vm}}
steps:
- uses: actions/checkout@v4
- uses: actions/setup-dotnet@v4
with:
dotnet-version: |
10.0.x
9.0.x
8.0.x
7.0.x
6.0.x
3.1.x
2.1.x
# - run: dotnet new globaljson --sdk-version "8.0.402" --force
- name: Cache .nuke/temp, ~/.nuget/packages
uses: actions/cache@v3
with:
path: |
.nuke/temp
~/.nuget/packages
!~/.nuget/packages/netescapades.enumgenerators
!~/.nuget/packages/netescapades.enumgenerators.interceptors
key: ${{ runner.os }}-${{ hashFiles('**/global.json', '**/*.csproj') }}
- name: Run './build.cmd Clean Test TestPackage PushToNuGet
run: ./build.cmd Clean Test TestPackage PushToNuGet
env:
NuGetToken: ${{ secrets.NUGET_TOKEN || 'NOT_SET'}}
- uses: actions/upload-artifact@v4
with:
name: packages-${{ matrix.os}}
path: artifacts/packages
- uses: actions/upload-artifact@v4
with:
name: results-${{ matrix.os}}
path: artifacts/results
publish-test-results:
name: "Publish Tests Results"
needs: build-and-test
runs-on: ubuntu-latest
permissions:
checks: write
pull-requests: write # needed unless run with comment_mode: off
# contents: read # only needed for private repository
# issues: read # only needed for private repository
if: always()
steps:
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
path: artifacts/results
- name: Publish Test Results
uses: EnricoMi/publish-unit-test-result-action@v2
with:
files: "artifacts/**/*.trx"
json_thousands_separator: ","
check_run_annotations_branch: "*"