blob: 96ac7ff4a86c2a4916ad69f258275f2a0ef78331 [file] [log] [blame]
####################################################################################
# DO NOT EDIT: This file was automatically generated by Generate-TestWorkflows.ps1
####################################################################################
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
name: 'Lucene.Net.Tests.Suggest'
on:
workflow_dispatch:
pull_request:
paths:
- 'src/Lucene.Net.Tests.Suggest/**/*'
- 'build/Dependencies.props'
- 'build/TestReferences.Common.*'
- 'TestTargetFrameworks.*'
- '*.sln'
- 'src/Lucene.Net.Tests.Suggest/Directory.Build.*'
- 'src/Directory.Build.*'
- 'Directory.Build.*'
# Dependencies
- 'src/Lucene.Net/**/*'
- 'src/Lucene.Net.Analysis.Common/**/*'
- 'src/Lucene.Net.Queries/**/*'
- 'src/Lucene.Net.Misc/**/*'
- 'src/Lucene.Net.Suggest/**/*'
- 'src/Lucene.Net.Codecs/**/*'
- 'src/Lucene.Net.TestFramework/**/*'
- '!**/*.md'
jobs:
Test:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [windows-latest, ubuntu-latest]
framework: [net5.0, netcoreapp2.1, net48]
platform: [x64]
configuration: [Release]
exclude:
- os: ubuntu-latest
framework: net48
- os: macos-latest
framework: net48
env:
project_path: './src/Lucene.Net.Tests.Suggest/Lucene.Net.Tests.Suggest.csproj'
trx_file_name: 'TestResults.trx'
md_file_name: 'TestResults.md' # Report file name for LiquidTestReports.Markdown
steps:
- uses: actions/checkout@v2
- name: Setup .NET 3.1 SDK
uses: actions/setup-dotnet@v1
with:
dotnet-version: '3.1.404'
if: ${{ startswith(matrix.framework, 'netcoreapp3.') }}
- name: Setup .NET 2.1 SDK
uses: actions/setup-dotnet@v1
with:
dotnet-version: '2.1.811'
if: ${{ startswith(matrix.framework, 'netcoreapp2.') }}
- name: Setup .NET 5 SDK
uses: actions/setup-dotnet@v1
with:
dotnet-version: '5.0.100'
- run: |
$project_name = [System.IO.Path]::GetFileNameWithoutExtension($env:project_path)
$test_results_artifact_name = "testresults_${{matrix.os}}_${{matrix.framework}}_${{matrix.platform}}_${{matrix.configuration}}"
Write-Host "Project Name: $project_name"
Write-Host "Results Artifact Name: $test_results_artifact_name"
echo "project_name=$project_name" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
echo "test_results_artifact_name=$test_results_artifact_name" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
# Title for LiquidTestReports.Markdown
echo "title=Test Run for $project_name - ${{matrix.framework}} - ${{matrix.platform}} - ${{matrix.os}}" | Out-File -FilePath $env:GITHUB_ENV -Encoding utf8 -Append
shell: pwsh
- run: dotnet build ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} /p:TestFrameworks=true
- run: dotnet test ${{env.project_path}} --configuration ${{matrix.configuration}} --framework ${{matrix.framework}} --no-build --no-restore --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}}
# upload reports as build artifacts
- name: Upload a Build Artifact
uses: actions/upload-artifact@v2
if: ${{always()}}
with:
name: '${{env.test_results_artifact_name}}'
path: '${{github.workspace}}/${{env.test_results_artifact_name}}'