Fix get-help online test (#3051)
Fix the "get-help -online" test using a workaround so that when a default browser is not set, the test does not fail.
This commit is contained in:
parent
250efcd39f
commit
8303a2b3fb
|
@ -55,8 +55,39 @@ Describe 'Get-Help -Online opens the default web browser and navigates to the cm
|
||||||
$skipTest = [System.Management.Automation.Platform]::IsIoT -or
|
$skipTest = [System.Management.Automation.Platform]::IsIoT -or
|
||||||
[System.Management.Automation.Platform]::IsNanoServer
|
[System.Management.Automation.Platform]::IsNanoServer
|
||||||
|
|
||||||
It "Get-Help get-process -online" -skip:$skipTest {
|
# this code is a workaround for issue: https://github.com/PowerShell/PowerShell/issues/3079
|
||||||
|
if((-not ($skipTest)) -and $IsWindows)
|
||||||
|
{
|
||||||
|
$skipTest = $true
|
||||||
|
$regKey = "HKEY_CURRENT_USER\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\http\UserChoice"
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
$progId = [Microsoft.Win32.Registry]::GetValue($regKey, "ProgId", $null)
|
||||||
|
if($progId)
|
||||||
|
{
|
||||||
|
$browserKey = [Microsoft.Win32.Registry]::ClassesRoot.OpenSubKey("$progId\shell\open\command", $false)
|
||||||
|
if($browserKey)
|
||||||
|
{
|
||||||
|
$browserExe = ($browserKey.GetValue($null) -replace '"', '') -split " "
|
||||||
|
|
||||||
|
if ($browserExe.count -ge 1)
|
||||||
|
{
|
||||||
|
if($browserExe[0] -match '.exe')
|
||||||
|
{
|
||||||
|
$skipTest = $false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
# We are not able to access Registry, skipping test.
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
It "Get-Help get-process -online" -skip:$skipTest {
|
||||||
{ Get-Help get-process -online } | Should Not Throw
|
{ Get-Help get-process -online } | Should Not Throw
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue