Skip to content

Add offline provider metadata extraction and unify provider loading through a shared assembler #496

Add offline provider metadata extraction and unify provider loading through a shared assembler

Add offline provider metadata extraction and unify provider loading through a shared assembler #496

Workflow file for this run

# This workflow will build a .NET project
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-net
name: PullRequest Merge Validation
on:
pull_request:
branches: [ "*" ]
permissions:
contents: read
jobs:
build-and-test:
runs-on: windows-2022
steps:
- uses: actions/checkout@v4
- name: Setup .NET
uses: actions/setup-dotnet@v4
with:
global-json-file: global.json
- name: Restore workloads
run: dotnet workload restore EventLogExpert.slnx
- name: Restore dependencies
run: dotnet restore EventLogExpert.slnx
- name: Build
run: dotnet build EventLogExpert.slnx --no-restore -c Release -p:PublishReadyToRun=false -p:WindowsPackageType=None
- name: Test (unit)
shell: pwsh
run: |
$projects = @(Get-ChildItem tests/Unit -Filter *.csproj -Recurse)
if ($projects.Count -eq 0) { throw 'No unit test projects found under tests/Unit.' }
$failed = $false
foreach ($project in $projects) {
dotnet test $project.FullName -c Release --no-build --no-restore --verbosity normal
if ($LASTEXITCODE -ne 0) { $failed = $true }
}
if ($failed) { throw 'One or more unit test projects failed.' }
- name: Test (integration)
shell: pwsh
env:
EVENTLOG_CONTAINER: "1"
run: |
$projects = @(Get-ChildItem tests/Integration -Filter *.csproj -Recurse)
if ($projects.Count -eq 0) { throw 'No integration test projects found under tests/Integration.' }
$failed = $false
foreach ($project in $projects) {
dotnet test $project.FullName -c Release --no-build --no-restore --verbosity normal -p:RunSettingsFilePath=""
if ($LASTEXITCODE -ne 0) { $failed = $true }
}
if ($failed) { throw 'One or more integration test projects failed.' }