Skip to content

Commit 48fd06f

Browse files
authored
Merge branch 'master' into issue/1059
2 parents 5fe9f7d + ab73b08 commit 48fd06f

File tree

537 files changed

+3459
-2592
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

537 files changed

+3459
-2592
lines changed

.build/azure-templates/publish-test-results.yml

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -87,6 +87,13 @@ steps:
8787
Write-Host "##vso[task.setvariable variable=CrashedRuns;]$crashedRuns"
8888
$crashed = $true
8989
}
90+
if ($innerXml -and ($innerXml.Contains('[ERROR]'))) {
91+
Write-Host "##vso[task.setvariable variable=StdOutFailure;]true"
92+
# Report all of the test projects that had stdout failures
93+
$stdOutFailureRuns = "$env:STDOUTFAILURERUNS,$testProjectName".TrimStart(',')
94+
Write-Host "##vso[task.setvariable variable=StdOutFailureRuns;]$stdOutFailureRuns"
95+
$crashed = $true
96+
}
9097
}
9198
}
9299
if ($reader.NodeType -eq [System.Xml.XmlNodeType]::EndElement -and $reader.Name -eq 'RunInfos') {
@@ -102,6 +109,34 @@ steps:
102109
Write-Host "##vso[task.setvariable variable=TestResultsFileExists;]$testResultsFileExists"
103110
displayName: 'Parse Test Results File'
104111

112+
- pwsh: |
113+
$testProjectName = "${{ parameters.testProjectName }}"
114+
$testStdErrFileName = "$(Build.ArtifactStagingDirectory)/${{ parameters.testResultsArtifactName }}/${{ parameters.osName }}/${{ parameters.framework }}/${{ parameters.vsTestPlatform }}/$testProjectName/dotnet-test-error.log"
115+
$testStdErrFileExists = Test-Path $testStdErrFileName
116+
if ($testStdErrFileExists) {
117+
$fileLength = (Get-Item $testStdErrFileName).Length
118+
if ($fileLength -gt 0) {
119+
$stream = [System.IO.StreamReader]::new($testStdErrFileName)
120+
try {
121+
while (-not $stream.EndOfStream) {
122+
$line = $stream.ReadLine()
123+
if ($line -match "Test Run Failed" -or $line -match "\[ERROR\]") {
124+
Write-Host "##vso[task.setvariable variable=StdErrFailure;]true"
125+
# Report all of the test projects that had stderr failures
126+
$stdErrFailureRuns = "$env:STDERRFAILURERUNS,$testProjectName".TrimStart(',')
127+
Write-Host "##vso[task.setvariable variable=StdErrFailureRuns;]$stdErrFailureRuns"
128+
break # No need to continue reading after detecting a failure
129+
}
130+
}
131+
} finally {
132+
$stream.Dispose()
133+
}
134+
}
135+
} else {
136+
Write-Host "WARNING: File not found: $testStdErrFileName"
137+
}
138+
displayName: 'Parse StdErr File'
139+
105140
- task: PublishTestResults@2
106141
displayName: 'Publish Test Results ${{ parameters.testProjectName }},${{ parameters.framework }},${{ parameters.vsTestPlatform }}'
107142
inputs:

.build/azure-templates/run-tests-on-os.yml

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
# runs the tests for each project on a background job in parallel,
2020
# then uploads the results to Azure DevOps pipelines
2121

22-
# NOTE: Depends on environment variables $(IsNightly) and $(IsWeekly)
22+
# NOTE: Depends on environment variables $(IsNightly), $(IsWeekly), and $(DisplayFullName)
2323

2424
parameters:
2525
osName: 'Windows' # The name of the operating system for display purposes.
@@ -172,6 +172,7 @@ steps:
172172
$tempDirectory = "$(Agent.TempDirectory)"
173173
$isNightly = if ($env:ISNIGHTLY -eq 'true') { 'true' } else { 'false' }
174174
$isWeekly = if ($env:ISWEEKLY -eq 'true') { 'true' } else { 'false' }
175+
$displayFullName = if ($env:DISPLAYFULLNAME -eq 'false') { 'false' } else { 'true' }
175176
176177
function IsSupportedFramework([string]$framework) {
177178
if ($IsWindows -eq $null) {
@@ -226,6 +227,10 @@ steps:
226227
227228
$testExpression = "$testExpression -- RunConfiguration.TargetPlatform=$testPlatform"
228229
230+
if ($displayFullName -eq 'true') {
231+
$testExpression = "$testExpression NUnit.DisplayName=FullName"
232+
}
233+
229234
Write-Host "Testing '$($testBinary.FullName)' on framework '$framework' and outputting test results to '$testResultDirectory/$testResultsFileName'..."
230235
Write-Host $testExpression -ForegroundColor Magenta
231236
if ($maximumParalellJobs -le 1) {
@@ -305,6 +310,16 @@ steps:
305310
Write-Host "##vso[task.logissue type=error;]Test run failed due to too many failed tests. Maximum failures allowed: $maximumAllowedFailures, total failures: $($env:TOTALFAILURES)."
306311
$failed = $true
307312
}
313+
if ([int]$maximumAllowedFailures -eq 0 -and $env:STDERRFAILURE -eq 'true') {
314+
$runsExpanded = "$($env:STDERRFAILURERUNS)" -replace ',',"`r`n"
315+
Write-Host "##vso[task.logissue type=error;]StdErr file(s) indicate test failures. Review the testresults artifacts for details. (click here to view the projects that failed)`r`n$runsExpanded"
316+
$failed = $true
317+
}
318+
if ([int]$maximumAllowedFailures -eq 0 -and $env:STDOUTFAILURE -eq 'true') {
319+
$runsExpanded = "$($env:STDOUTFAILURERUNS)" -replace ',',"`r`n"
320+
Write-Host "##vso[task.logissue type=error;]StdOut file(s) indicate test failures. Review the testresults artifacts for details. (click here to view the projects that failed)`r`n$runsExpanded"
321+
$failed = $true
322+
}
308323
if ($failed) {
309324
Write-Host "##vso[task.complete result=Failed;]"
310325
}

.build/runbuild.ps1

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -328,6 +328,12 @@ task Test -depends CheckSDK, UpdateLocalSDKVersion, Restore -description "This t
328328
$testExpression = "$testExpression --TestCaseFilter:""$where"""
329329
}
330330

331+
# Anything after here is test run settings, following the "--" separator
332+
$testExpression = "$testExpression --"
333+
334+
# Specify NUnit.DisplayName to get the full test class name in the output
335+
$testExpression = "$testExpression NUnit.DisplayName=FullName"
336+
331337
Write-Host $testExpression -ForegroundColor Magenta
332338

333339
$scriptBlock = {

.github/workflows/Generate-TestWorkflows.ps1

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,6 +232,7 @@ on:
232232
- '.build/dependencies.props'
233233
- '.build/TestReferences.Common.*'
234234
- 'TestTargetFrameworks.*'
235+
- '.github/**/*.yml'
235236
- '*.sln'$directoryBuildPaths
236237
# Dependencies$dependencyPaths
237238
- '!**/*.md'
@@ -322,7 +323,7 @@ jobs:
322323

323324
$fileText += "
324325
- run: dotnet build `${{env.project_path}} --configuration `${{matrix.configuration}} --framework `${{matrix.framework}} /p:TestFrameworks=true
325-
- run: dotnet test `${{env.project_path}} --configuration `${{matrix.configuration}} --framework `${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:`"console;verbosity=normal`" --logger:`"trx;LogFileName=`${{env.trx_file_name}}`" --logger:`"liquid.md;LogFileName=`${{env.md_file_name}};Title=`${{env.title}};`" --results-directory:`"`${{github.workspace}}/`${{env.test_results_artifact_name}}/`${{env.project_name}}`" -- RunConfiguration.TargetPlatform=`${{matrix.platform}} TestRunParameters.Parameter\(name=\`"tests:slow\`",\ value=\`"\`${{env.run_slow_tests}}\`"\)
326+
- run: dotnet test `${{env.project_path}} --configuration `${{matrix.configuration}} --framework `${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:`"console;verbosity=normal`" --logger:`"trx;LogFileName=`${{env.trx_file_name}}`" --logger:`"liquid.md;LogFileName=`${{env.md_file_name}};Title=`${{env.title}};`" --results-directory:`"`${{github.workspace}}/`${{env.test_results_artifact_name}}/`${{env.project_name}}`" -- RunConfiguration.TargetPlatform=`${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\`"tests:slow\`",\ value=\`"\`${{env.run_slow_tests}}\`"\)
326327
shell: bash
327328
# upload reports as build artifacts
328329
- name: Upload a Build Artifact

.github/workflows/Lucene-Net-Tests-AllProjects.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ on:
2828
- '.build/dependencies.props'
2929
- '.build/TestReferences.Common.*'
3030
- 'TestTargetFrameworks.*'
31+
- '.github/**/*.yml'
3132
- '*.sln'
3233
- 'src/Lucene.Net.Tests.AllProjects/Directory.Build.*'
3334
- 'src/Directory.Build.*'
@@ -132,7 +133,7 @@ jobs:
132133
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
133134
shell: pwsh
134135
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
135-
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
136+
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
136137
shell: bash
137138
# upload reports as build artifacts
138139
- name: Upload a Build Artifact

.github/workflows/Lucene-Net-Tests-Analysis-Common.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ on:
2828
- '.build/dependencies.props'
2929
- '.build/TestReferences.Common.*'
3030
- 'TestTargetFrameworks.*'
31+
- '.github/**/*.yml'
3132
- '*.sln'
3233
- 'src/Lucene.Net.Tests.Analysis.Common/Directory.Build.*'
3334
- 'src/Directory.Build.*'
@@ -116,7 +117,7 @@ jobs:
116117
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
117118
shell: pwsh
118119
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
119-
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
120+
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
120121
shell: bash
121122
# upload reports as build artifacts
122123
- name: Upload a Build Artifact

.github/workflows/Lucene-Net-Tests-Analysis-Kuromoji.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ on:
2828
- '.build/dependencies.props'
2929
- '.build/TestReferences.Common.*'
3030
- 'TestTargetFrameworks.*'
31+
- '.github/**/*.yml'
3132
- '*.sln'
3233
- 'src/Lucene.Net.Tests.Analysis.Kuromoji/Directory.Build.*'
3334
- 'src/Directory.Build.*'
@@ -113,7 +114,7 @@ jobs:
113114
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
114115
shell: pwsh
115116
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
116-
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
117+
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
117118
shell: bash
118119
# upload reports as build artifacts
119120
- name: Upload a Build Artifact

.github/workflows/Lucene-Net-Tests-Analysis-Morfologik.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ on:
2828
- '.build/dependencies.props'
2929
- '.build/TestReferences.Common.*'
3030
- 'TestTargetFrameworks.*'
31+
- '.github/**/*.yml'
3132
- '*.sln'
3233
- 'src/Lucene.Net.Tests.Analysis.Morfologik/Directory.Build.*'
3334
- 'src/Directory.Build.*'
@@ -113,7 +114,7 @@ jobs:
113114
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
114115
shell: pwsh
115116
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
116-
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
117+
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
117118
shell: bash
118119
# upload reports as build artifacts
119120
- name: Upload a Build Artifact

.github/workflows/Lucene-Net-Tests-Analysis-OpenNLP.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ on:
2828
- '.build/dependencies.props'
2929
- '.build/TestReferences.Common.*'
3030
- 'TestTargetFrameworks.*'
31+
- '.github/**/*.yml'
3132
- '*.sln'
3233
- 'src/Lucene.Net.Tests.Analysis.OpenNLP/Directory.Build.*'
3334
- 'src/Directory.Build.*'
@@ -116,7 +117,7 @@ jobs:
116117
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
117118
shell: pwsh
118119
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
119-
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
120+
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
120121
shell: bash
121122
# upload reports as build artifacts
122123
- name: Upload a Build Artifact

.github/workflows/Lucene-Net-Tests-Analysis-Phonetic.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ on:
2828
- '.build/dependencies.props'
2929
- '.build/TestReferences.Common.*'
3030
- 'TestTargetFrameworks.*'
31+
- '.github/**/*.yml'
3132
- '*.sln'
3233
- 'src/Lucene.Net.Tests.Analysis.Phonetic/Directory.Build.*'
3334
- 'src/Directory.Build.*'
@@ -110,7 +111,7 @@ jobs:
110111
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
111112
shell: pwsh
112113
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
113-
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
114+
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --blame-hang --blame-hang-dump-type mini --blame-hang-timeout 20minutes --logger:"console;verbosity=normal" --logger:"trx;LogFileName=${{env.trx_file_name}}" --logger:"liquid.md;LogFileName=${{env.md_file_name}};Title=${{env.title}};" --results-directory:"${{github.workspace}}/${{env.test_results_artifact_name}}/${{env.project_name}}" -- RunConfiguration.TargetPlatform=${{matrix.platform}} NUnit.DisplayName=FullName TestRunParameters.Parameter\(name=\"tests:slow\",\ value=\"\${{env.run_slow_tests}}\"\)
114115
shell: bash
115116
# upload reports as build artifacts
116117
- name: Upload a Build Artifact

0 commit comments

Comments
 (0)