[英]How to Mock function to return a complex value with Pester
我的瘟疫代碼存在問題,其中我應模擬某個函數( Get-State
)以返回復雜值,以便$StartState
可以具有值。 就我的Powershell級別而言,我似乎無法創建自定義對象。
$State = Get-State
$StartState = $State.Where({$_.Name -eq "State_SUccess"}).state
我嘗試使用帶有此代碼的自定義對象來模擬Get-State
函數
$State = [PSCustomObject]@{Name = "State_SUccess"}
if($State.Name -eq "State_SUccess""){
$State = [PSCustomObject]@{Name = @{state = 1}}
}
else
{
}
$BatchState.statusName.state
但這並不能解決問題, $StartState
仍然沒有任何價值,因為也許我必須在哪里創建自定義方法?
關於您打算做什么,我沒有太多信息,但我認為是這樣的:
將第一部分更改為:
$State = Get-State
$StartState = $State.Where({$_.Name -eq "State_SUccess"})
和:
$State = [PSCustomObject]@{Name = "State_SUccess"}
if($State.Name -eq "State_SUccess")
{
$State = [PSCustomObject]@{Name = @{state = 1}}
}
else
{
}
$StartState.Name
這是一個相當奇怪的方法...也許您需要這樣的東西:
$State = @{Name = "State_SUccess"}
if($State.Name -eq "State_SUccess")
{
$State['State'] = 1
}
else
{
}
$StartState
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.