Skip to content

Merge pull request #105 from jakubch1/main #6

Merge pull request #105 from jakubch1/main

Merge pull request #105 from jakubch1/main #6

# 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: "Calculator Scenario 19"
on:
push:
branches: [ "main" ]
paths: [ 'samples/Calculator/tests/**', 'samples/Calculator/src/**', '.github/workflows/Calculator_Scenario19.yml', 'samples/Calculator/scenarios/scenario19/coverage.runsettings' ]
jobs:
build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: ./samples/Calculator
steps:
- uses: actions/checkout@v3
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: 7.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --no-restore
- name: Install dotnet-coverage
run: dotnet tool install -g dotnet-coverage
- name: Start server
run: dotnet-coverage collect --output report.coverage --session-id TagScenario19 "dotnet run --no-build" &
working-directory: ./samples/Calculator/src/Calculator.Server
- name: Run tests
run: dotnet test --settings ./scenarios/scenario19/coverage.runsettings --no-build --verbosity normal --results-directory ./TestResults/
working-directory: ./samples/Calculator
- name: Stop server
run: dotnet-coverage shutdown TagScenario19
- name: Merge coverage reports
run: dotnet-coverage merge -f cobertura -o $GITHUB_WORKSPACE/report.cobertura.xml "./TestResults/**/*.coverage" src/Calculator.Server/report.coverage
working-directory: ./samples/Calculator
- name: ReportGenerator
uses: danielpalme/ReportGenerator-GitHub-Action@5.2.0
with:
reports: '${{ github.workspace }}/report.cobertura.xml'
targetdir: '${{ github.workspace }}/coveragereport'
reporttypes: 'MarkdownSummaryGithub'
- name: Upload coverage into summary
run: cat $GITHUB_WORKSPACE/coveragereport/SummaryGithub.md >> $GITHUB_STEP_SUMMARY
- name: Archive code coverage results
uses: actions/upload-artifact@v3
with:
name: code-coverage-report
path: '${{ github.workspace }}/report.cobertura.xml'