2015-12-18 1 views
3

Может ли кто-нибудь показать мне лучший способ проверить параметры, не содержащие нулевых строк, с помощью Pester?Единичный тест ПараметрBindingValidationException

Я получаю ParameterBindingValidationException, когда передаю пустую строку моего модуля PowerShell.

function Get-MyFunc { 
    param (
    [parameter(Mandatory=$true)] 
    [string]$stringParameter 
) 

    ## rest of function logic here 
} 

я ожидал, чтобы быть в состоянии сделать это в моем тесте:

Describe 'When calling Get-MyFunc with empty parameters' { 
    It 'Should throw an exception' { 
    Get-MyFunc '' | Should Throw 
    } 
} 

Или это:

Describe 'When calling Get-MyFunc with empty parameters' { 
    It 'Should throw an exception' { 
    PesterThrow { Get-MyFunc '' } | Should Be $true 
    } 
} 

ответ

2

Положите чек в ScriptBlock:

Describe 'When calling Get-MyFunc with empty parameters' { 
    It 'Should throw an exception' { 
    { Get-MyFunc '' } | Should Throw 
    } 
} 

См. Pester Wiki.

+0

Спасибо, не мог видеть это для мира в пятницу! – Trujllo