24

我需要确定一个PSCustomObjects 数组是否包含其Title属性与值匹配的项目。我需要一个用于Pester断言的布尔值:

$Items -<function> $Name | Should Be $True

假设:

$Items = @()
$Items += [PsCustomObject]@{Title='foo';Url='http://f.io'}
$Items += [PsCustomObject]@{Title='bar';Url='http://b.io'}

Contains不起作用:

PS> $Items -contains 'foo'
False

Match返回匹配的实例,但它不是布尔值:

PS> $Items -match 'foo'

Title  Url
-----  ---
foo    http://f.io

我想我可以:

($Items -Match $Name).Count | Should Be 1

有更好的选择吗?

4

1 回答 1

40

采用:

$Items.Title -contains 'foo'
于 2015-08-08T17:49:41.063 回答