@@ -100,12 +100,32 @@ extends:
100100 arguments : ' --configuration $(BuildConfiguration) --no-incremental'
101101
102102 # Run the Unit test
103- - task : DotNetCoreCLI@2
103+ - pwsh : |
104+ $testResultsDirectory = "$(Agent.TempDirectory)\TestResults"
105+ New-Item -ItemType Directory -Force -Path $testResultsDirectory | Out-Null
106+
107+ $testApplications = @(
108+ @{ Name = "Microsoft.OpenApi.Hidi.Tests"; Path = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Hidi.Tests\bin\$(BuildConfiguration)\net10.0\Microsoft.OpenApi.Hidi.Tests.exe" },
109+ @{ Name = "Microsoft.OpenApi.Readers.Tests"; Path = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Readers.Tests\bin\$(BuildConfiguration)\net10.0\Microsoft.OpenApi.Readers.Tests.exe" },
110+ @{ Name = "Microsoft.OpenApi.Tests"; Path = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Tests\bin\$(BuildConfiguration)\net10.0\Microsoft.OpenApi.Tests.exe" }
111+ )
112+
113+ foreach ($testApplication in $testApplications) {
114+ & $testApplication.Path --report-xunit-trx --report-xunit-trx-filename "$($testApplication.Name).trx" --results-directory $testResultsDirectory --minimum-expected-tests 1
115+ if ($LASTEXITCODE -ne 0) {
116+ exit $LASTEXITCODE
117+ }
118+ }
104119 displayName: 'test'
120+
121+ - task : PublishTestResults@2
122+ displayName : ' Publish test results'
123+ condition : succeededOrFailed()
105124 inputs :
106- command : test
107- projects : ' $(Build.SourcesDirectory)\Microsoft.OpenApi.slnx'
108- arguments : ' --configuration $(BuildConfiguration) --no-build'
125+ testResultsFormat : VSTest
126+ testResultsFiles : ' $(Agent.TempDirectory)\TestResults\*.trx'
127+ failTaskOnMissingResultsFile : true
128+ failTaskOnFailedTests : true
109129
110130 - task : EsrpCodeSigning@6
111131 displayName : ' ESRP CodeSigning binaries'
0 commit comments