Skip to content

Commit 1a8572f

Browse files
Copilotbaywet
andauthored
ci(azure): discover mtp test executables
Co-authored-by: baywet <7905502+baywet@users.noreply.github.com>
1 parent a88a909 commit 1a8572f

1 file changed

Lines changed: 16 additions & 9 deletions

File tree

.azure-pipelines/ci-build.yml

Lines changed: 16 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -21,8 +21,6 @@ pr:
2121
variables:
2222
buildPlatform: 'Any CPU'
2323
buildConfiguration: 'Release'
24-
# Keep in sync with the test project TargetFramework values.
25-
testTargetFramework: 'net10.0'
2624
ProductBinPath: '$(Build.SourcesDirectory)\src\Microsoft.OpenApi\bin\$(BuildConfiguration)'
2725
REGISTRY: 'msgraphprodregistry.azurecr.io'
2826
IMAGE_NAME: 'public/openapi/hidi'
@@ -104,20 +102,29 @@ extends:
104102
# Run the Unit test
105103
- pwsh: |
106104
$testResultsDirectory = "$(Agent.TempDirectory)\TestResults"
107-
$targetFramework = "$(testTargetFramework)"
108105
New-Item -ItemType Directory -Force -Path $testResultsDirectory | Out-Null
109106
110107
$testApplications = @(
111-
@{ Name = "Microsoft.OpenApi.Hidi.Tests"; Path = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Hidi.Tests\bin\$(BuildConfiguration)\$targetFramework\Microsoft.OpenApi.Hidi.Tests.exe" },
112-
@{ Name = "Microsoft.OpenApi.Readers.Tests"; Path = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Readers.Tests\bin\$(BuildConfiguration)\$targetFramework\Microsoft.OpenApi.Readers.Tests.exe" },
113-
@{ Name = "Microsoft.OpenApi.Tests"; Path = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Tests\bin\$(BuildConfiguration)\$targetFramework\Microsoft.OpenApi.Tests.exe" }
108+
@{ Name = "Microsoft.OpenApi.Hidi.Tests"; Pattern = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Hidi.Tests\bin\$(BuildConfiguration)\*\Microsoft.OpenApi.Hidi.Tests.exe" },
109+
@{ Name = "Microsoft.OpenApi.Readers.Tests"; Pattern = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Readers.Tests\bin\$(BuildConfiguration)\*\Microsoft.OpenApi.Readers.Tests.exe" },
110+
@{ Name = "Microsoft.OpenApi.Tests"; Pattern = "$(Build.SourcesDirectory)\test\Microsoft.OpenApi.Tests\bin\$(BuildConfiguration)\*\Microsoft.OpenApi.Tests.exe" }
114111
)
115112
116113
$exitCode = 0
117114
foreach ($testApplication in $testApplications) {
118-
& $testApplication.Path --report-xunit-trx --report-xunit-trx-filename "$($testApplication.Name).trx" --results-directory $testResultsDirectory --minimum-expected-tests 1
119-
if ($LASTEXITCODE -ne 0) {
120-
$exitCode = $LASTEXITCODE
115+
$testExecutables = @(Get-Item -Path $testApplication.Pattern -ErrorAction SilentlyContinue)
116+
if ($testExecutables.Count -eq 0) {
117+
Write-Error "No test executable found for $($testApplication.Name)"
118+
$exitCode = 1
119+
continue
120+
}
121+
122+
foreach ($testExecutable in $testExecutables) {
123+
$targetFramework = Split-Path -Path $testExecutable.DirectoryName -Leaf
124+
& $testExecutable.FullName --report-xunit-trx --report-xunit-trx-filename "$($testApplication.Name)-$targetFramework.trx" --results-directory $testResultsDirectory --minimum-expected-tests 1
125+
if ($LASTEXITCODE -ne 0) {
126+
$exitCode = 1
127+
}
121128
}
122129
}
123130

0 commit comments

Comments
 (0)