Merge pull request #1661 from PowerShell/dongbo/get-pssession

Fix if/def guards to allow engine to load WsMan and Diagnostics snapins by default when RunspaceConfiguration is used to create a runspace
This commit is contained in:
Dongbo Wang
2016-08-05 13:00:06 -07:00
committed by GitHub
2 changed files with 11 additions and 2 deletions
@@ -1284,7 +1284,7 @@ namespace System.Management.Automation
{
s_defaultMshSnapins = new List<DefaultPSSnapInInformation>()
{
#if !PORTABLE // Microsoft.PowerShell.Commands.Diagnostics.dll needs to be ported
#if !UNIX
new DefaultPSSnapInInformation("Microsoft.PowerShell.Diagnostics", "Microsoft.PowerShell.Commands.Diagnostics", null,
"GetEventResources,Description", "GetEventResources,Vendor"),
#endif
@@ -1303,7 +1303,7 @@ namespace System.Management.Automation
"SecurityMshSnapInResources,Description","SecurityMshSnapInResources,Vendor")
};
#if !PORTABLE
#if !UNIX
if (!Utils.IsWinPEHost())
{
s_defaultMshSnapins.Add(new DefaultPSSnapInInformation("Microsoft.WSMan.Management", "Microsoft.WSMan.Management", null,
@@ -3,5 +3,14 @@ Describe 'Basic engine APIs' -Tags "CI" {
It 'can create default instance' {
[powershell]::Create() | Should Not Be $null
}
It "can load the default snapin 'Microsoft.WSMan.Management'" -skip:(-not $IsWindows) {
$ps = [powershell]::Create()
$ps.AddScript("Get-Command -Name Test-WSMan") > $null
$result = $ps.Invoke()
$result.Count | Should Be 1
$result[0].PSSnapIn.Name | Should Be "Microsoft.WSMan.Management"
}
}
}