Files

43 lines
1.4 KiB
PowerShell
Raw Permalink Normal View History

# Copyright (c) Microsoft Corporation.
# Licensed under the MIT License.
2016-09-15 11:27:44 -07:00
Describe 'Tests for indexers' -Tags "CI" {
2017-01-16 13:31:14 -08:00
It 'Indexer in dictionary' {
$hashtable = @{ "Hello"="There" }
$hashtable["Hello"] | Should -BeExactly "There"
2016-09-15 11:27:44 -07:00
}
2020-01-13 19:24:42 +00:00
It 'Accessing a Indexed property of a dictionary that does not exist should return $null' {
2016-09-15 11:27:44 -07:00
$hashtable = @{ "Hello"="There" }
$hashtable["Hello There"] | Should -BeNullOrEmpty
2016-09-15 11:27:44 -07:00
}
It 'CimClass implements an indexer' -Skip:(-not $IsWindows) {
2017-01-16 13:31:14 -08:00
$service = Get-CimClass -ClassName Win32_Service
2017-01-16 13:31:14 -08:00
$service.CimClassProperties["DisplayName"].Name | Should -BeExactly 'DisplayName'
2016-09-15 11:27:44 -07:00
}
2020-01-13 19:24:42 +00:00
It 'Accessing a Indexed property of a CimClass that does not exist should return $null' -Skip:(-not $IsWindows) {
2017-01-16 13:31:14 -08:00
$service = Get-CimClass -ClassName Win32_Service
$service.CimClassProperties["Hello There"] | Should -BeNullOrEmpty
2016-09-15 11:27:44 -07:00
}
It 'ITuple implementations can be indexed' {
$tuple = [Tuple]::Create(10, 'Hello')
$tuple[0] | Should -Be 10
$tuple[1] | Should -BeExactly 'Hello'
}
It 'ITuple objects can be spliced' {
$tuple = [Tuple]::Create(10, 'Hello')
$tuple[0..1] | Should -Be @(10, 'Hello')
}
It 'Index of -1 should return the last item for ITuple objects' {
$tuple = [Tuple]::Create(10, 'Hello')
$tuple[-1] | Should -BeExactly 'Hello'
}
2016-09-15 11:27:44 -07:00
}