Functions/Test-ShouldProcess.ps1
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 |
Function Test-ShouldProcess { <# .SYNOPSIS This will test Should Process. .DESCRIPTION This will test Should Process. .INPUTS Command line .OUTPUTS None .NOTES Just a basic test of how Should Process works .EXAMPLE Test-ShouldProcess -Confirm .EXAMPLE Test-ShouldProcess -WhatIf .LINK https://github.com/Panzerbjrn/TestingModule #> [CmdletBinding(SupportsShouldProcess,ConfirmImpact='Medium')] param() Begin { Write-Verbose "Beginning $($MyInvocation.Mycommand)" if (-not $PSBoundParameters.ContainsKey('Confirm')){ $ConfirmPreference = $PSCmdlet.SessionState.PSVariable.GetValue('ConfirmPreference') } if (-not $PSBoundParameters.ContainsKey('WhatIf')){ $WhatIfPreference = $PSCmdlet.SessionState.PSVariable.GetValue('WhatIfPreference') } } Process { # Preparation if ($PSCmdlet.ShouldProcess("ShouldProcess?")){ # Critical code } # Cleanup } } |