Skip to content

feat: VS Code extension MVP — ground-up rebuild with daemon architecture #182

feat: VS Code extension MVP — ground-up rebuild with daemon architecture

feat: VS Code extension MVP — ground-up rebuild with daemon architecture #182

Workflow file for this run

name: TUI E2E Tests
on:
push:
branches: [main]
paths:
- 'src/PPDS.Cli/Tui/**'
- 'tests/PPDS.Tui.E2eTests/**'
pull_request:
branches: [main]
paths:
- 'src/PPDS.Cli/Tui/**'
- 'tests/PPDS.Tui.E2eTests/**'
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
tui-e2e:
runs-on: windows-latest
timeout-minutes: 30
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0
- name: Setup .NET
uses: actions/setup-dotnet@v5
with:
dotnet-version: |
8.0.x
9.0.x
10.0.x
- name: Setup Node.js
uses: actions/setup-node@v6
with:
node-version: '20'
cache: 'npm'
cache-dependency-path: tests/PPDS.Tui.E2eTests/package-lock.json
- name: Build PPDS CLI
run: dotnet build src/PPDS.Cli/PPDS.Cli.csproj -c Debug -f net10.0
- name: Install tui-e2e dependencies
working-directory: tests/PPDS.Tui.E2eTests
run: npm ci
- name: Install Playwright browsers
working-directory: tests/PPDS.Tui.E2eTests
run: npx playwright install --with-deps chromium
- name: Run TUI E2E tests
working-directory: tests/PPDS.Tui.E2eTests
run: npm run test:update
env:
PPDS_FORCE_TUI: '1'
- name: Upload test results
uses: actions/upload-artifact@v7
if: always()
with:
name: tui-e2e-results
path: |
tests/PPDS.Tui.E2eTests/playwright-report/
tests/PPDS.Tui.E2eTests/test-results/
retention-days: 7
- name: Upload snapshots on failure
uses: actions/upload-artifact@v7
if: failure()
with:
name: tui-e2e-snapshot-diff
path: tests/PPDS.Tui.E2eTests/__snapshots__/
retention-days: 7