-
-
Notifications
You must be signed in to change notification settings - Fork 142
Updated test suite to Pester v5 #543
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
SrBlackVoid
wants to merge
19
commits into
AtlassianPS:develop
Choose a base branch
from
SrBlackVoid:Pester_v5
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Conversation
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
Also serves as initial basis for how test files may need to be reformatted.
Kept getting flagged for modifications on this one file, ended up needing to renormalize to get EOL churn to stop.
Tried to preserve the original structure of the tests as much as possible while converting it to v5 compatibility.
Established overall strategy for updating to Pester v5. Key elements that may show in subsequent function test updates: - Removing It blocks from shared functions (causes conflicts with discovery phase) and adjusting how these functions are called - Removing InModuleScope usage (not recommended practice) - Adjusting mock setups & replacing Assert-MockCalled with Should -Invoke - Some cases of re-organizing BeforeAll/Each and Context blocks
Leaving out Get-JiraIssueLinkType as a special exception.
Get-JiraIssueLinkType was the only function (so far) that needed some rework to remove the recursive call, which was making testing extremely challenging.
Because these are all private functions, took a different route with InModuleScope usage (still follows recommended guidelines).
Leaving out Invoke-JiraMethod as exception (special case)
This one put up a fight. There should be a way to not require completely surrounding in InModuleScope, but could not get current test structure to work without it.
Couple of ScriptAnalyzer tests and a missing mandatory parameter flag.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Updated the Pester test suite to be compatible with v5. Known to be working with v. 5.7.1 of Pester, but minimum supported version may be 5.2 according to feature documentation.
Description
This is a rather large-scale change, but I tried to keep the following overall principles:
Note there are still a number of #NOTE, #WARN, and one #BUG tag where I either made changes against the original assertion setups or found a discrepancy (I can clean those up as those are confirmed).
Motivation and Context
While I was directly impacted by the recent breaking changes to the Jira API, I did notice the Pester test suite was still on the outdated v4. As noted in #517 , this could make things easier for contributors overall.
Types of changes
Checklist