Tests/Unit/Public/Requests/New-SCAAccessRequest.Tests.ps1
|
Import-Module (Join-Path $PSScriptRoot '../../../../psSCA.psd1') -Force Describe 'New-SCAAccessRequest' { InModuleScope psSCA { It 'posts the request body to /workflows/requests' { Mock Invoke-SCARequest { } New-SCAAccessRequest -InputObject @{ reason = 'test' } -Confirm:$false | Out-Null Should -Invoke Invoke-SCARequest -ParameterFilter { $Service -eq 'UAR' -and $Method -eq 'POST' -and $Path -eq '/workflows/requests' -and $Body['reason'] -eq 'test' } } It 'processes each pipeline object as an independent request' { Mock Invoke-SCARequest { } @(@{ reason = 'one' }, @{ reason = 'two' }) | New-SCAAccessRequest -Confirm:$false | Out-Null Should -Invoke Invoke-SCARequest -Times 2 -Exactly } It 'does not call Invoke-SCARequest when -WhatIf is specified' { Mock Invoke-SCARequest { } New-SCAAccessRequest -InputObject @{ reason = 'test' } -WhatIf | Out-Null Should -Invoke Invoke-SCARequest -Times 0 -Exactly } } } |