Skip to content

feat(tui): foundation refactoring for multi-tab architecture #662

feat(tui): foundation refactoring for multi-tab architecture

feat(tui): foundation refactoring for multi-tab architecture #662

Workflow file for this run

name: Test
on:
push:
branches: [main]
paths:
- '**.cs'
- '**.csproj'
- '**.sln'
- 'Directory.Build.props'
- 'Directory.Packages.props'
- 'nuget.config'
pull_request:
branches: [main]
paths:
- '**.cs'
- '**.csproj'
- '**.sln'
- 'Directory.Build.props'
- 'Directory.Packages.props'
- 'nuget.config'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
test:
runs-on: windows-latest
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0 # Required for MinVer to read git history
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: |
8.0.x
9.0.x
10.0.x
- name: Restore dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
- name: Test with Coverage
run: |
dotnet test --configuration Release --no-build --verbosity normal --filter "Category!=Integration" --collect:"XPlat Code Coverage" --results-directory ./coverage
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
with:
directory: ./coverage
flags: unittests
fail_ci_if_error: false # Don't fail build if upload fails
verbose: true
# Gate job for branch protection
test-status:
runs-on: ubuntu-latest
needs: test
if: always()
steps:
- name: Check test status
run: |
if [[ "${{ needs.test.result }}" == "success" ]]; then
echo "Tests passed"
exit 0
else
echo "Tests failed: ${{ needs.test.result }}"
exit 1
fi