forked from PowerShell/PowerShell
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTest-Connection.Tests.ps1
More file actions
39 lines (36 loc) · 1.3 KB
/
Copy pathTest-Connection.Tests.ps1
File metadata and controls
39 lines (36 loc) · 1.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
Describe "Test-Connection" -Tags "CI" {
BeforeAll {
$originalDefaultParameterValues = $PSDefaultParameterValues.Clone()
if ( ! $IsWindows )
{
$PSDefaultParameterValues["it:skip"] = $true
}
else
{
$countCases = @(
@{count = 2}
@{count = 3}
)
$quietTests = @(
@{computerName = 'localhost'; message = 'online' ; result = $true}
@{computerName = '_fake_computer_namex'; message = 'offline' ; result = $false}
)
}
}
AfterAll {
$global:PSDefaultParameterValues = $originalDefaultParameterValues
}
It "Gets the right IP Address" {
$localHost = Test-Connection -ComputerName localhost -Count 1
$localHost.IPV4Address | Should Be '127.0.0.1'
$localhost.IPV6Address | Should Be '::1'
}
It "The count parameter counting to <count>" -TestCases $countCases {
param($count)
(Test-Connection -ComputerName localhost -Count $count).Count | Should Be $count
}
It "The quiet parameter on a <message> computer" -TestCases $quietTests {
param($computername, $result)
Test-Connection -ComputerName $computername -Count 1 -Quiet | Should Be $result
}
}