⚙️ [Maintenance]: Adopt Process-PSModule v6.1.4 and require Pester 6.x in tests#9
⚙️ [Maintenance]: Adopt Process-PSModule v6.1.4 and require Pester 6.x in tests#9Marius Storhaug (MariusStorhaug) wants to merge 3 commits into
Conversation
No Significant Changes DetectedThis PR does not contain changes to files that would trigger a new release:
Build, test, and publish stages will be skipped for this PR. If you believe this is incorrect, please verify that your changes are in the correct locations. |
There was a problem hiding this comment.
Pull request overview
This PR updates the module’s Pester test scripts to explicitly require Pester 6.x via #Requires -Modules, so tests fail early during discovery when an incompatible Pester version is present.
Changes:
- Add
#Requires -Modulesin each test file to declare a Pester dependency - Pin the Pester module identity via its
GUID - Attempt to constrain the allowed Pester major version to 6.x using
ModuleVersion+MaximumVersion
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| tests/Update-ElvUI.Tests.ps1 | Adds a #Requires -Modules header intended to enforce Pester 6.x for this test script. |
| tests/Install-ElvUI.Tests.ps1 | Adds a #Requires -Modules header intended to enforce Pester 6.x for this test script. |
| tests/ElvUI.Tests.ps1 | Adds a #Requires -Modules header intended to enforce Pester 6.x for this test script. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
The GUID pins module identity (precise pinning), a stricter control than the lock-to-major risk appetite. Keep only the version range.
No Significant Changes DetectedThis PR does not contain changes to files that would trigger a new release:
Build, test, and publish stages will be skipped for this PR. If you believe this is incorrect, please verify that your changes are in the correct locations. |
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
No Significant Changes DetectedThis PR does not contain changes to files that would trigger a new release:
Build, test, and publish stages will be skipped for this PR. If you believe this is incorrect, please verify that your changes are in the correct locations. |
Super-linter summary
All files and directories linted successfully For more information, see the GitHub Actions workflow run Powered by Super-linter |
This module now runs on the latest Process-PSModule automation (v6.1.4) and pins its test suite to Pester 6, so continuous integration uses the current build, test, and publish pipeline and the tests fail fast if Pester 6 is ever missing.
Changed: CI runs on Process-PSModule v6.1.4
The reusable workflow pin moves to v6.1.4 from the module's previously pinned v5 release, adopting the current pipeline, including the Pester 6 test runner and the consolidated
TestDatasecret model. No caller changes are required — the existingsecretswiring keeps passing everything the pipeline needs.Changed: Tests require Pester 6.x
Every test file now declares the Pester 6 requirement, so the suite always resolves Pester 6 and fails with a clear message if only an older Pester is available, instead of silently running on it.
Technical Details
.github/workflows/Process-PSModule.yml: pin bumped toworkflow.yml@da180bac16b13bfbcdf08b2e4e221b5b49e5ff28 # v6.1.4.tests/*.Tests.ps1: added#Requires -Modules @{ ModuleName = 'Pester'; ModuleVersion = '6.0.0'; MaximumVersion = '6.*' }.Shouldassertions are left unchanged. Pester 6 is backward-compatible, so converting to the newShould-*syntax is intentionally out of scope for this maintenance change.