Tests/Unit/Public/Requests/Remove-SCAAccessRequest.Tests.ps1

Import-Module (Join-Path $PSScriptRoot '../../../../psSCA.psd1') -Force

Describe 'Remove-SCAAccessRequest' {
    InModuleScope psSCA {
        It 'cancels the request by ID' {
            Mock Invoke-SCARequest { }

            Remove-SCAAccessRequest -RequestId 'req-1' -Confirm:$false | Out-Null

            Should -Invoke Invoke-SCARequest -ParameterFilter {
                $Path -eq '/workflows/requests/{requestId}/cancel' -and $PathParameters['requestId'] -eq 'req-1'
            }
        }

        It 'does not call Invoke-SCARequest when -WhatIf is specified' {
            Mock Invoke-SCARequest { }

            Remove-SCAAccessRequest -RequestId 'req-1' -WhatIf | Out-Null

            Should -Invoke Invoke-SCARequest -Times 0 -Exactly
        }
    }
}