Remove tests for app badgecount #17
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Tests | |
| on: | |
| push: | |
| branches: [ develop, main ] | |
| pull_request: | |
| branches: [ develop, main ] | |
| concurrency: | |
| group: integration-tests-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| tests: | |
| name: Integration Tests (${{ matrix.os }}) | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| include: | |
| - os: ubuntu-24.04 | |
| rid: linux-x64 | |
| - os: windows-2022 | |
| rid: win-x64 | |
| - os: macos-14 | |
| rid: osx-arm64 | |
| env: | |
| DOTNET_SKIP_FIRST_TIME_EXPERIENCE: 1 | |
| DOTNET_NOLOGO: 1 | |
| CI: true | |
| ELECTRON_ENABLE_LOGGING: 1 | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Setup .NET | |
| uses: actions/setup-dotnet@v4 | |
| with: | |
| dotnet-version: '10.0.x' | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version: '22' | |
| - name: Restore | |
| run: dotnet restore -r ${{ matrix.rid }} -p:RuntimeIdentifier=${{ matrix.rid }} src/ElectronNET.IntegrationTests/ElectronNET.IntegrationTests.csproj | |
| - name: Build | |
| run: dotnet build --no-restore -c Release -r ${{ matrix.rid }} -p:RuntimeIdentifier=${{ matrix.rid }} src/ElectronNET.IntegrationTests/ElectronNET.IntegrationTests.csproj | |
| - name: Install Linux GUI dependencies | |
| if: runner.os == 'Linux' | |
| run: | | |
| set -e | |
| sudo apt-get update | |
| # Core Electron dependencies | |
| sudo apt-get install -y xvfb \ | |
| libgtk-3-0 libnss3 libgdk-pixbuf-2.0-0 libdrm2 libgbm1 libxss1 libxtst6 libatk-bridge2.0-0 libatk1.0-0 libatspi2.0-0 libx11-xcb1 libasound2t64 | |
| - name: Run tests (Linux) | |
| if: runner.os == 'Linux' | |
| continue-on-error: true | |
| run: | | |
| mkdir -p test-results | |
| xvfb-run -a dotnet test src/ElectronNET.IntegrationTests/ElectronNET.IntegrationTests.csproj \ | |
| -c Release --no-build -r ${{ matrix.rid }} -p:RuntimeIdentifier=${{ matrix.rid }} \ | |
| --logger "trx;LogFileName=TestResults.trx" \ | |
| --logger "console;verbosity=detailed" \ | |
| --results-directory test-results | |
| - name: Run tests (Windows) | |
| if: runner.os == 'Windows' | |
| continue-on-error: true | |
| run: | | |
| New-Item -ItemType Directory -Force -Path test-results | Out-Null | |
| dotnet test src/ElectronNET.IntegrationTests/ElectronNET.IntegrationTests.csproj -c Release --no-build -r ${{ matrix.rid }} -p:RuntimeIdentifier=${{ matrix.rid }} --logger "trx;LogFileName=TestResults.trx" --logger "console;verbosity=detailed" --results-directory test-results | |
| - name: Run tests (macOS) | |
| if: runner.os == 'macOS' | |
| continue-on-error: true | |
| run: | | |
| mkdir -p test-results | |
| dotnet test src/ElectronNET.IntegrationTests/ElectronNET.IntegrationTests.csproj -c Release --no-build -r ${{ matrix.rid }} -p:RuntimeIdentifier=${{ matrix.rid }} --logger "trx;LogFileName=TestResults.trx" --logger "console;verbosity=detailed" --results-directory test-results | |
| - name: Upload raw test results | |
| if: always() | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: test-results-${{ matrix.os }} | |
| path: test-results/*.trx | |
| retention-days: 7 | |
| # - name: Publish Test Results | |
| # if: always() | |
| # uses: EnricoMi/publish-unit-test-result-action/composite@v2 | |
| # with: | |
| # files: test-results/*.trx | |
| # check_name: Integration Tests (${{ matrix.os }}) | |
| # comment_mode: always | |
| # check_run: true | |
| # check_run_annotations: all tests | |
| # check_run_annotations_branch: "*" | |
| # fail_on: test failures | |
| # - name: Fail if tests failed (after publishing) | |
| # if: always() | |
| # shell: pwsh | |
| # run: | | |
| # if (-not (Test-Path 'test-results')) { Write-Error 'No test-results folder found'; exit 1 } | |
| # $failed = 0 | |
| # Get-ChildItem 'test-results' -Filter *.trx | ForEach-Object { | |
| # [xml]$xml = Get-Content $_.FullName | |
| # $counters = $xml.TestRun.ResultSummary.Counters | |
| # if ($counters) { | |
| # $failed += [int]$counters.failed + [int]$counters.error + [int]$counters.timeout | |
| # } | |
| # } | |
| # if ($failed -gt 0) { Write-Error "Tests failed: $failed"; exit 1 } else { Write-Host 'All tests passed' } | |
| summary: | |
| name: Aggregate | |
| runs-on: ubuntu-24.04 | |
| if: always() | |
| needs: [tests] | |
| steps: | |
| - name: Download all test results | |
| uses: actions/download-artifact@v4 | |
| with: | |
| path: test-results | |
| - name: Publish Test Results | |
| uses: EnricoMi/publish-unit-test-result-action@v2 | |
| with: | |
| files: "test-results/**/*.trx" | |
| check_name: "Integration Tests" | |
| comment_mode: always | |
| check_run: true | |
| check_run_annotations: all tests | |
| check_run_annotations_branch: "*" | |
| fail_on: test failures | |
| - name: Summary | |
| run: echo "All matrix test jobs completed." |