|
23 | 23 | typescript: ${{ steps.filter.outputs.typescript }} |
24 | 24 | drivers: ${{ steps.filter.outputs.drivers }} |
25 | 25 | dbt-tools: ${{ steps.filter.outputs.dbt-tools }} |
| 26 | + installer: ${{ steps.filter.outputs.installer }} |
26 | 27 | steps: |
27 | 28 | - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 |
28 | 29 |
|
|
50 | 51 | - 'packages/opencode/test/altimate/connections.test.ts' |
51 | 52 | dbt-tools: |
52 | 53 | - 'packages/dbt-tools/**' |
| 54 | + installer: |
| 55 | + - 'install.ps1' |
| 56 | + - 'test/windows/**' |
53 | 57 |
|
54 | 58 | # --------------------------------------------------------------------------- |
55 | 59 | # Main TypeScript tests — excludes driver E2E tests (separate job) and |
@@ -309,6 +313,34 @@ jobs: |
309 | 313 | run: bun run test |
310 | 314 | working-directory: packages/dbt-tools |
311 | 315 |
|
| 316 | + # --------------------------------------------------------------------------- |
| 317 | + # Windows installer (install.ps1) — Pester behavioral tests on real Windows. |
| 318 | + # Runs the script as a subprocess (stopping early via -Help / unknown version |
| 319 | + # so nothing is downloaded) to cover arg parsing, the WOW64 arch fix, and |
| 320 | + # unknown-version rejection. Only when install.ps1 / its tests change. |
| 321 | + # --------------------------------------------------------------------------- |
| 322 | + windows-installer: |
| 323 | + name: Windows Installer (Pester) |
| 324 | + needs: changes |
| 325 | + if: needs.changes.outputs.installer == 'true' || github.event_name == 'push' |
| 326 | + runs-on: windows-latest |
| 327 | + timeout-minutes: 10 |
| 328 | + steps: |
| 329 | + - uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4 |
| 330 | + |
| 331 | + - name: Install Pester |
| 332 | + shell: pwsh |
| 333 | + run: Install-Module Pester -MinimumVersion 5.0.0 -Force -Scope CurrentUser -SkipPublisherCheck |
| 334 | + |
| 335 | + - name: Run installer Pester tests |
| 336 | + shell: pwsh |
| 337 | + run: | |
| 338 | + $config = New-PesterConfiguration |
| 339 | + $config.Run.Path = "./test/windows/install.Tests.ps1" |
| 340 | + $config.Run.Throw = $true |
| 341 | + $config.Output.Verbosity = "Detailed" |
| 342 | + Invoke-Pester -Configuration $config |
| 343 | +
|
312 | 344 | # --------------------------------------------------------------------------- |
313 | 345 | # dbt-tools E2E — slow (~3 min), only on push to main. |
314 | 346 | # Tests dbt CLI fallbacks against real dbt versions (1.8, 1.10, 1.11) and |
|
0 commit comments