From 8ee5bf07cccc5b28285a089e1ffc721fcff2e256 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Wed, 19 Apr 2017 11:59:46 +0300 Subject: [PATCH 01/14] Remove 'gin' alias on Unix --- .../commands/management/GetComputerInfoCommand.cs | 2 +- .../Microsoft.PowerShell.Management.psd1 | 1 + .../Microsoft.PowerShell.Management.psd1 | 2 +- .../Microsoft.PowerShell.Management.psd1 | 2 +- .../engine/InitialSessionState.cs | 2 ++ .../Get-ComputerInfo.Tests.ps1 | 5 ----- .../Default-Aliases.Tests.ps1 | 9 ++++++--- 7 files changed, 12 insertions(+), 11 deletions(-) diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs index a5150225d87..974e3aedf70 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs @@ -24,7 +24,7 @@ namespace Microsoft.PowerShell.Commands /// [Cmdlet(VerbsCommon.Get, "ComputerInfo", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799466")] - [Alias("gin")] + //[Alias("gin")] [OutputType(typeof(ComputerInfo), typeof(PSObject))] public class GetComputerInfoCommand : PSCmdlet { diff --git a/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index de0f7f818ae..142a617b99d 100644 --- a/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,6 +7,7 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' +AliasesToExport = @() FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index 2c0acd4eb02..c2450fc3e33 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,7 +7,7 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @("gin", "gtz", "stz") +AliasesToExport = @("gtz", "stz") FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index 6325b6fe97d..4b930c88793 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -8,7 +8,7 @@ PowerShellVersion="3.0" CLRVersion="4.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @("gcb", "scb", "gin", "gtz", "stz") +AliasesToExport = @("gcb", "scb", "gtz", "stz") FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index 0b0b865a0f3..ab0f585b03b 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5151,6 +5151,8 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Copy-ItemProperty", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("diff", "Compare-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("gin", + "Get-ComputerInfo", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sleep", "Start-Sleep", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sort", diff --git a/test/powershell/Modules/Microsoft.PowerShell.Management/Get-ComputerInfo.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Management/Get-ComputerInfo.Tests.ps1 index 1cd5dd70ce9..31bb33c4e86 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Management/Get-ComputerInfo.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Management/Get-ComputerInfo.Tests.ps1 @@ -1332,11 +1332,6 @@ try { } } - It "Verify that alias 'gin' exists" { - $result = (Get-Alias -Name "gin").Name - $result | Should Be "gin" - } - It "Test for DeviceGuard properties" { if (-not (HasDeviceGuardLicense)) { diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 index fc1cfe8ed5b..4dfa9549769 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 @@ -81,7 +81,7 @@ Describe "Verify approved aliases list" -Tags "CI" { "gdr -> Get-PSDrive" = $FullCLR -or $CoreWindows -or $CoreUnix "ghy -> Get-History" = $FullCLR -or $CoreWindows -or $CoreUnix "gi -> Get-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "gin -> Get-ComputerInfo" = $CoreWindows -or $CoreUnix + "gin -> Get-ComputerInfo" = $FullCLR -or $CoreWindows "gjb -> Get-Job" = $FullCLR -or $CoreWindows -or $CoreUnix "gl -> Get-Location" = $FullCLR -or $CoreWindows -or $CoreUnix "gm -> Get-Member" = $FullCLR -or $CoreWindows -or $CoreUnix @@ -198,7 +198,10 @@ Describe "Verify approved aliases list" -Tags "CI" { # We control only default engine aliases (Source -eq "") and aliases from following default loaded modules $moduleList = @("Microsoft.PowerShell.Utility", "Microsoft.PowerShell.Management") $currentAliasList = Get-Alias | Where-Object { $_.Source -eq "" -or $moduleList -contains $_.Source } | Select-Object -ExpandProperty DisplayName - - Compare-Object -ReferenceObject $currentAliasList -DifferenceObject $aliaslist | Should Be $null + $result = Compare-Object -ReferenceObject $currentAliasList -DifferenceObject $aliaslist + # Below 'Should Be' don't show full list wrong aliases so we output them explicitly + # if all aliases is Ok we output nothing + $result | Write-Host + $result | Should Be $null } } From 501e2f07921e41b8071cfca6578f7659d6514096 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Thu, 20 Apr 2017 06:56:33 +0300 Subject: [PATCH 02/14] Fix aliases Fix 'gsv','sasv' and 'spsv' Fix 'fhx' alias Fix 'cfs' alias Fix 'gcb' and 'scb' aliases Fix 'gtz' and 'stz' aliases Fix 'gin' --- .../commands/management/GetClipboardCommand.cs | 8 ++++++-- .../management/GetComputerInfoCommand.cs | 4 ++++ .../commands/management/Service.cs | 3 +++ .../commands/management/SetClipboardCommand.cs | 8 ++++++-- .../Microsoft.PowerShell.Utility.psd1 | 2 +- .../Microsoft.PowerShell.Management.psd1 | 2 +- .../Microsoft.PowerShell.Utility.psd1 | 2 +- .../Microsoft.PowerShell.Management.psd1 | 2 +- .../Microsoft.PowerShell.Utility.psd1 | 2 +- .../engine/InitialSessionState.cs | 18 ++++++++++-------- .../Default-Aliases.Tests.ps1 | 7 +++---- 11 files changed, 37 insertions(+), 21 deletions(-) diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs index be24ef009c6..d1651c1e040 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs @@ -1,4 +1,6 @@ -using System; +#if !CORECLR + +using System; using System.Management.Automation; using System.Collections.Generic; using System.Windows.Forms; @@ -199,4 +201,6 @@ private PSObject WrapOutputInPSObject( return result; } } -} \ No newline at end of file +} + +#endif diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs index 974e3aedf70..868cc740e55 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs @@ -2,6 +2,8 @@ Copyright (c) Microsoft Corporation. All rights reserved. --********************************************************************/ +#if !UNIX + using System; using System.Collections.Generic; using System.Runtime.InteropServices; @@ -5179,3 +5181,5 @@ private static class PInvokeDllNames } #endregion Native } + +#endif diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs index fb6bedc6586..198bf15c7b0 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs @@ -592,6 +592,7 @@ private bool Matches(ServiceController service, string[] matchList) [Cmdlet(VerbsCommon.Get, "Service", DefaultParameterSetName = "Default", HelpUri = "https://go.microsoft.com/fwlink/?LinkID=113332", RemotingCapability = RemotingCapability.SupportedByCommand)] [OutputType(typeof(ServiceController))] + [Alias("gsv")] public sealed class GetServiceCommand : MultipleServiceCommandBase { #region Parameters @@ -1208,6 +1209,7 @@ internal bool DoResumeService(ServiceController serviceController) /// [Cmdlet(VerbsLifecycle.Stop, "Service", DefaultParameterSetName = "InputObject", SupportsShouldProcess = true, HelpUri = "https://go.microsoft.com/fwlink/?LinkID=113414")] [OutputType(typeof(ServiceController))] + [Alias("spsv")] public sealed class StopServiceCommand : ServiceOperationBaseCommand { /// @@ -1261,6 +1263,7 @@ protected override void ProcessRecord() /// [Cmdlet(VerbsLifecycle.Start, "Service", DefaultParameterSetName = "InputObject", SupportsShouldProcess = true, HelpUri = "https://go.microsoft.com/fwlink/?LinkID=113406")] [OutputType(typeof(ServiceController))] + [Alias("sasv")] public sealed class StartServiceCommand : ServiceOperationBaseCommand { /// diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs index 209fb3c9da1..3011d5ef370 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs @@ -1,4 +1,6 @@ -using System; +#if !CORECLR + +using System; using System.Management.Automation; using System.Collections.Generic; using System.Globalization; @@ -417,4 +419,6 @@ private static int GetByteCount(StringBuilder sb, int start = 0, int end = -1) return count; } } -} \ No newline at end of file +} + +#endif diff --git a/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index a5f20d41b1c..23c4853c3de 100644 --- a/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -24,7 +24,7 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger" , "Get-Uptime", "New-TemporaryFile", "Get-Verb", "Format-Hex" FunctionsToExport= "Import-PowerShellDataFile" -AliasesToExport= "fhx" +AliasesToExport= @() NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index c2450fc3e33..b558e4036f4 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,7 +7,7 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @("gtz", "stz") +AliasesToExport = @() FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index f601e2d50f8..4fd8e601b9d 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -24,7 +24,7 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Unblock-File", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger" , "Get-Uptime", "Get-Verb", "Format-Hex" FunctionsToExport= "ConvertFrom-SddlString" -AliasesToExport= "fhx" +AliasesToExport= @() NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index 4b930c88793..be6840cc31b 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -8,7 +8,7 @@ PowerShellVersion="3.0" CLRVersion="4.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @("gcb", "scb", "gtz", "stz") +AliasesToExport = @() FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index 25008e2703a..39722240980 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -26,7 +26,7 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger", "ConvertFrom-String", "Convert-String" , "Get-Uptime", "New-TemporaryFile", "Get-Verb", "Format-Hex" FunctionsToExport= "ConvertFrom-SddlString" -AliasesToExport= "CFS", "fhx" +AliasesToExport= @() NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index ab0f585b03b..c524f7cb8c5 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5016,6 +5016,8 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Export-Alias", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("epcsv", "Export-Csv", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("fhx", + "Format-Hex", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("fl", "Format-List", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("ft", @@ -5054,8 +5056,6 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Get-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("group", "Group-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("gsv", - "Get-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gu", "Get-Unique", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gv", @@ -5110,8 +5110,6 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Resolve-Path", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sal", "Set-Alias", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("sasv", - "Start-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sbp", "Set-PSBreakpoint", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sc", @@ -5131,8 +5129,6 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Start-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("spps", "Stop-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("spsv", - "Stop-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sv", "Set-Variable", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), // Web cmdlets aliases @@ -5151,14 +5147,18 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Copy-ItemProperty", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("diff", "Compare-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("gin", - "Get-ComputerInfo", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("gsv", + "Get-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sleep", "Start-Sleep", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sort", "Sort-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("start", "Start-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("sasv", + "Start-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("spsv", + "Stop-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("tee", "Tee-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("write", @@ -5281,6 +5281,8 @@ internal static SessionStateAliasEntry[] BuiltInAliases new SessionStateAliasEntry("wjb", "Wait-Job", "", ScopedItemOptions.AllScope), #if !CORECLR + new SessionStateAliasEntry("cfs", + "ConvertFrom-String", "", ScopedItemOptions.AllScope), new SessionStateAliasEntry("sujb", "Suspend-Job", "", ScopedItemOptions.AllScope), new SessionStateAliasEntry("rujb", diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 index 4dfa9549769..07e41cb9ede 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 @@ -27,7 +27,6 @@ Describe "Verify approved aliases list" -Tags "CI" { $FullCLR = !$isCoreCLR $CoreWindows = $isCoreCLR -and $IsWindows $CoreUnix = $isCoreCLR -and !$IsWindows - $FullCLR -or $CoreWindows -or $CoreUnix $aliasFullList = @{ "% -> ForEach-Object" = $FullCLR -or $CoreWindows -or $CoreUnix "? -> Where-Object" = $FullCLR -or $CoreWindows -or $CoreUnix @@ -92,7 +91,7 @@ Describe "Verify approved aliases list" -Tags "CI" { "group -> Group-Object" = $FullCLR -or $CoreWindows -or $CoreUnix "gsn -> Get-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix "gsnp -> Get-PSSnapin" = $FullCLR - "gsv -> Get-Service" = $FullCLR -or $CoreWindows -or $CoreUnix + "gsv -> Get-Service" = $FullCLR -or $CoreWindows "gtz -> Get-TimeZone" = $FullCLR -or $CoreWindows -or $CoreUnix "gu -> Get-Unique" = $FullCLR -or $CoreWindows -or $CoreUnix "gv -> Get-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix @@ -160,7 +159,7 @@ Describe "Verify approved aliases list" -Tags "CI" { "sajb -> Start-Job" = $FullCLR -or $CoreWindows -or $CoreUnix "sal -> Set-Alias" = $FullCLR -or $CoreWindows -or $CoreUnix "saps -> Start-Process" = $FullCLR -or $CoreWindows -or $CoreUnix - "sasv -> Start-Service" = $FullCLR -or $CoreWindows -or $CoreUnix + "sasv -> Start-Service" = $FullCLR -or $CoreWindows "sbp -> Set-PSBreakpoint" = $FullCLR -or $CoreWindows -or $CoreUnix "sc -> Set-Content" = $FullCLR -or $CoreWindows -or $CoreUnix "scb -> Set-Clipboard" = $FullCLR @@ -175,7 +174,7 @@ Describe "Verify approved aliases list" -Tags "CI" { "sp -> Set-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix "spjb -> Stop-Job" = $FullCLR -or $CoreWindows -or $CoreUnix "spps -> Stop-Process" = $FullCLR -or $CoreWindows -or $CoreUnix - "spsv -> Stop-Service" = $FullCLR -or $CoreWindows -or $CoreUnix + "spsv -> Stop-Service" = $FullCLR -or $CoreWindows "start -> Start-Process" = $FullCLR -or $CoreWindows "stz -> Set-TimeZone" = $CoreWindows "sujb -> Suspend-Job" = $FullCLR From 9dc9ab832f022d533ef749b1b8de4b01ee0d5326 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Tue, 25 Apr 2017 18:17:03 +0300 Subject: [PATCH 03/14] Move aliases to InitialSessionState.cs --- .../management/GetComputerInfoCommand.cs | 1 - .../commands/management/Service.cs | 3 - .../commands/management/TimeZoneCommands.cs | 2 - .../FormatAndOutput/format-hex/Format-Hex.cs | 1 - .../Microsoft.PowerShell.Management.psd1 | 1 - .../Microsoft.PowerShell.Utility.psd1 | 1 - .../Microsoft.PowerShell.Management.psd1 | 1 - .../Microsoft.PowerShell.Utility.psd1 | 1 - .../Microsoft.PowerShell.Management.psd1 | 1 - .../Microsoft.PowerShell.Utility.psd1 | 1 - .../engine/InitialSessionState.cs | 12 +- .../engine/DefaultCommands.Tests.ps1 | 497 ++++++++++++++++++ 12 files changed, 506 insertions(+), 16 deletions(-) create mode 100644 test/powershell/engine/DefaultCommands.Tests.ps1 diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs index 868cc740e55..d884421ae7c 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs @@ -26,7 +26,6 @@ namespace Microsoft.PowerShell.Commands /// [Cmdlet(VerbsCommon.Get, "ComputerInfo", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799466")] - //[Alias("gin")] [OutputType(typeof(ComputerInfo), typeof(PSObject))] public class GetComputerInfoCommand : PSCmdlet { diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs index 198bf15c7b0..fb6bedc6586 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/Service.cs @@ -592,7 +592,6 @@ private bool Matches(ServiceController service, string[] matchList) [Cmdlet(VerbsCommon.Get, "Service", DefaultParameterSetName = "Default", HelpUri = "https://go.microsoft.com/fwlink/?LinkID=113332", RemotingCapability = RemotingCapability.SupportedByCommand)] [OutputType(typeof(ServiceController))] - [Alias("gsv")] public sealed class GetServiceCommand : MultipleServiceCommandBase { #region Parameters @@ -1209,7 +1208,6 @@ internal bool DoResumeService(ServiceController serviceController) /// [Cmdlet(VerbsLifecycle.Stop, "Service", DefaultParameterSetName = "InputObject", SupportsShouldProcess = true, HelpUri = "https://go.microsoft.com/fwlink/?LinkID=113414")] [OutputType(typeof(ServiceController))] - [Alias("spsv")] public sealed class StopServiceCommand : ServiceOperationBaseCommand { /// @@ -1263,7 +1261,6 @@ protected override void ProcessRecord() /// [Cmdlet(VerbsLifecycle.Start, "Service", DefaultParameterSetName = "InputObject", SupportsShouldProcess = true, HelpUri = "https://go.microsoft.com/fwlink/?LinkID=113406")] [OutputType(typeof(ServiceController))] - [Alias("sasv")] public sealed class StartServiceCommand : ServiceOperationBaseCommand { /// diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs index 213ac8cf27c..45d16e70f2b 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs @@ -14,7 +14,6 @@ namespace Microsoft.PowerShell.Commands /// [Cmdlet(VerbsCommon.Get, "TimeZone", DefaultParameterSetName = "Name", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799468")] - [Alias("gtz")] public class GetTimeZoneCommand : PSCmdlet { #region Parameters @@ -118,7 +117,6 @@ protected override void ProcessRecord() SupportsShouldProcess = true, DefaultParameterSetName = "Name", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799469")] - [Alias("stz")] public class SetTimeZoneCommand : PSCmdlet { #region string constants diff --git a/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs b/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs index b6456cb52b4..26f40ecb9e6 100644 --- a/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs +++ b/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs @@ -13,7 +13,6 @@ namespace Microsoft.PowerShell.Commands /// Displays the hexidecimal equivalent of the input data. /// [Cmdlet(VerbsCommon.Format, "Hex", SupportsShouldProcess = true, HelpUri ="https://go.microsoft.com/fwlink/?LinkId=526919")] - [Alias ("fhx")] [OutputType(typeof(Microsoft.PowerShell.Commands.ByteCollection))] public sealed class FormatHex : PSCmdlet { diff --git a/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index 142a617b99d..de0f7f818ae 100644 --- a/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,7 +7,6 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @() FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index 23c4853c3de..6cf478214fd 100644 --- a/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -24,7 +24,6 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger" , "Get-Uptime", "New-TemporaryFile", "Get-Verb", "Format-Hex" FunctionsToExport= "Import-PowerShellDataFile" -AliasesToExport= @() NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index b558e4036f4..ecb5ea4a8ab 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,7 +7,6 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @() FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index 4fd8e601b9d..d13a22ab188 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -24,7 +24,6 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Unblock-File", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger" , "Get-Uptime", "Get-Verb", "Format-Hex" FunctionsToExport= "ConvertFrom-SddlString" -AliasesToExport= @() NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index be6840cc31b..3b435ff859a 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -8,7 +8,6 @@ PowerShellVersion="3.0" CLRVersion="4.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' -AliasesToExport = @() FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index 39722240980..988736ed0cf 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -26,7 +26,6 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger", "ConvertFrom-String", "Convert-String" , "Get-Uptime", "New-TemporaryFile", "Get-Verb", "Format-Hex" FunctionsToExport= "ConvertFrom-SddlString" -AliasesToExport= @() NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index c524f7cb8c5..760e79be808 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5017,7 +5017,7 @@ internal static SessionStateAliasEntry[] BuiltInAliases new SessionStateAliasEntry("epcsv", "Export-Csv", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("fhx", - "Format-Hex", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + "Format-Hex", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("fl", "Format-List", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("ft", @@ -5054,6 +5054,8 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Get-ItemPropertyValue", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gps", "Get-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("gtz", + "Get-TimeZone", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("group", "Group-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gu", @@ -5147,8 +5149,12 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Copy-ItemProperty", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("diff", "Compare-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("gin", + "Get-ComputerInfo", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gsv", - "Get-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + "Get-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + new SessionStateAliasEntry("stz", + "Set-TimeZone", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sleep", "Start-Sleep", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sort", @@ -5156,7 +5162,7 @@ internal static SessionStateAliasEntry[] BuiltInAliases new SessionStateAliasEntry("start", "Start-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sasv", - "Start-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), + "Start-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("spsv", "Stop-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("tee", diff --git a/test/powershell/engine/DefaultCommands.Tests.ps1 b/test/powershell/engine/DefaultCommands.Tests.ps1 new file mode 100644 index 00000000000..a5d65199ad4 --- /dev/null +++ b/test/powershell/engine/DefaultCommands.Tests.ps1 @@ -0,0 +1,497 @@ +Describe "Verify approved aliases list" -Tags "CI" { + BeforeAll { + $FullCLR = !$isCoreCLR + $CoreWindows = $isCoreCLR -and $IsWindows + $CoreUnix = $isCoreCLR -and !$IsWindows + $commandList = @" +"CommandType", "Name", "Definition", "Present" +"Alias", "%", "ForEach-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "?", "Where-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ac", "Add-Content", $($FullCLR -or $CoreWindows ) +"Alias", "asnp", "Add-PSSnapIn", $($FullCLR ) +"Alias", "cat", "Get-Content", $($FullCLR -or $CoreWindows ) +"Alias", "cd", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "CFS", "ConvertFrom-String", $($FullCLR ) +"Alias", "chdir", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "clc", "Clear-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "clear", "Clear-Host", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "clhy", "Clear-History", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "cli", "Clear-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "clp", "Clear-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "cls", "Clear-Host", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "clv", "Clear-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "cnsn", "Connect-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "compare", "Compare-Object", $($FullCLR -or $CoreWindows ) +"Alias", "copy", "Copy-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "cp", "Copy-Item", $($FullCLR -or $CoreWindows ) +"Alias", "cpi", "Copy-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "cpp", "Copy-ItemProperty", $($FullCLR -or $CoreWindows ) +"Alias", "curl", "Invoke-WebRequest", $($FullCLR ) +"Alias", "cvpa", "Convert-Path", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "dbp", "Disable-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "del", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "diff", "Compare-Object", $($FullCLR -or $CoreWindows ) +"Alias", "dir", "Get-ChildItem", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "dnsn", "Disconnect-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ebp", "Enable-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "echo", "Write-Output", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "epal", "Export-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "epcsv", "Export-Csv", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "epsn", "Export-PSSession", $($FullCLR ) +"Alias", "erase", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "etsn", "Enter-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "exsn", "Exit-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "fc", "Format-Custom", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "fhx", "Format-Hex", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "fl", "Format-List", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "foreach", "ForEach-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ft", "Format-Table", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "fw", "Format-Wide", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gal", "Get-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gbp", "Get-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gc", "Get-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gcb", "Get-Clipboard", $($FullCLR ) +"Alias", "gci", "Get-ChildItem", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gcm", "Get-Command", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gcs", "Get-PSCallStack", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gdr", "Get-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ghy", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gi", "Get-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gin", "Get-ComputerInfo", $($FullCLR -or $CoreWindows ) +"Alias", "gjb", "Get-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gl", "Get-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gm", "Get-Member", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gmo", "Get-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gp", "Get-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gps", "Get-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gpv", "Get-ItemPropertyValue", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "group", "Group-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gsn", "Get-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gsnp", "Get-PSSnapIn", $($FullCLR ) +"Alias", "gsv", "Get-Service", $($FullCLR -or $CoreWindows ) +"Alias", "gtz", "Get-TimeZone", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gu", "Get-Unique", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gv", "Get-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "gwmi", "Get-WmiObject", $($FullCLR ) +"Alias", "h", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "history", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "icm", "Invoke-Command", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "iex", "Invoke-Expression", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ihy", "Invoke-History", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ii", "Invoke-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ipal", "Import-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ipcsv", "Import-Csv", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ipmo", "Import-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ipsn", "Import-PSSession", $($FullCLR ) +"Alias", "irm", "Invoke-RestMethod", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ise", "powershell_ise.exe", $($FullCLR ) +"Alias", "iwmi", "Invoke-WMIMethod", $($FullCLR ) +"Alias", "iwr", "Invoke-WebRequest", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "kill", "Stop-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "lp", "Out-Printer", $($FullCLR ) +"Alias", "ls", "Get-ChildItem", $($FullCLR -or $CoreWindows ) +"Alias", "man", "help", $($FullCLR -or $CoreWindows ) +"Alias", "md", "mkdir", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "measure", "Measure-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "mi", "Move-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "mount", "New-PSDrive", $($FullCLR -or $CoreWindows ) +"Alias", "move", "Move-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "mp", "Move-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "mv", "Move-Item", $($FullCLR -or $CoreWindows ) +"Alias", "nal", "New-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ndr", "New-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ni", "New-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "nmo", "New-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "npssc", "New-PSSessionConfigurationFile", $($FullCLR ) +"Alias", "nsn", "New-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "nv", "New-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "nwsn", "New-PSWorkflowSession", $($FullCLR ) +"Alias", "ogv", "Out-GridView", $($FullCLR ) +"Alias", "oh", "Out-Host", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "popd", "Pop-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ps", "Get-Process", $($FullCLR -or $CoreWindows ) +"Alias", "pushd", "Push-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "pwd", "Get-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "r", "Invoke-History", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rbp", "Remove-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rcjb", "Receive-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rcsn", "Receive-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rd", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rdr", "Remove-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ren", "Rename-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "ri", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rjb", "Remove-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rm", "Remove-Item", $($FullCLR -or $CoreWindows ) +"Alias", "rmdir", "Remove-Item", $($FullCLR -or $CoreWindows ) +"Alias", "rmo", "Remove-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rni", "Rename-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rnp", "Rename-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rp", "Remove-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rsn", "Remove-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rsnp", "Remove-PSSnapin", $($FullCLR ) +"Alias", "rujb", "Resume-Job", $($FullCLR ) +"Alias", "rv", "Remove-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rvpa", "Resolve-Path", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "rwmi", "Remove-WMIObject", $($FullCLR ) +"Alias", "sajb", "Start-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "sal", "Set-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "saps", "Start-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "sasv", "Start-Service", $($FullCLR -or $CoreWindows ) +"Alias", "sbp", "Set-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "sc", "Set-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "scb", "Set-Clipboard", $($FullCLR ) +"Alias", "select", "Select-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "set", "Set-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "shcm", "Show-Command", $($FullCLR ) +"Alias", "si", "Set-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "sl", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "sleep", "Start-Sleep", $($FullCLR -or $CoreWindows ) +"Alias", "sls", "Select-String", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "sort", "Sort-Object", $($FullCLR -or $CoreWindows ) +"Alias", "sp", "Set-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "spjb", "Stop-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "spps", "Stop-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "spsv", "Stop-Service", $($FullCLR -or $CoreWindows ) +"Alias", "start", "Start-Process", $($FullCLR -or $CoreWindows ) +"Alias", "stz", "Set-TimeZone", $($FullCLR -or $CoreWindows ) +"Alias", "sujb", "Suspend-Job", $($FullCLR ) +"Alias", "sv", "Set-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "swmi", "Set-WMIInstance", $($FullCLR ) +"Alias", "tee", "Tee-Object", $($FullCLR -or $CoreWindows ) +"Alias", "trcm", "Trace-Command", $($FullCLR ) +"Alias", "type", "Get-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "wget", "Invoke-WebRequest", $($FullCLR ) +"Alias", "where", "Where-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "wjb", "Wait-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) +"Alias", "write", "Write-Output", $($FullCLR -or $CoreWindows ) +"Cmdlet", "Add-Computer", , $($FullCLR ) +"Cmdlet", "Add-Content", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Add-History", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Add-Member", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Add-PSSnapin", , $($FullCLR ) +"Cmdlet", "Add-Type", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Checkpoint-Computer", , $($FullCLR ) +"Cmdlet", "Clear-Content", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Clear-EventLog", , $($FullCLR ) +"Cmdlet", "Clear-History", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Clear-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Clear-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Clear-RecycleBin", , $($FullCLR ) +"Cmdlet", "Clear-Variable", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Compare-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Complete-Transaction", , $($FullCLR ) +"Cmdlet", "Connect-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Connect-WSMan", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "ConvertFrom-Csv", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertFrom-Json", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertFrom-SecureString", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertFrom-String", , $($FullCLR ) +"Cmdlet", "ConvertFrom-StringData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Convert-Path", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Convert-String", , $($FullCLR ) +"Cmdlet", "ConvertTo-Csv", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertTo-Html", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertTo-Json", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertTo-SecureString", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ConvertTo-Xml", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Copy-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Copy-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Debug-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Debug-Process", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Debug-Runspace", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Disable-ComputerRestore", , $($FullCLR ) +"Cmdlet", "Disable-PSBreakpoint", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Disable-PSRemoting", , $($FullCLR ) +"Cmdlet", "Disable-PSSessionConfiguration", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Disable-RunspaceDebug", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Disable-WSManCredSSP", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Disconnect-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Disconnect-WSMan", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Enable-ComputerRestore", , $($FullCLR ) +"Cmdlet", "Enable-PSBreakpoint", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Enable-PSRemoting", , $($FullCLR ) +"Cmdlet", "Enable-PSSessionConfiguration", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Enable-RunspaceDebug", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Enable-WSManCredSSP", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Enter-PSHostProcess", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Enter-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Exit-PSHostProcess", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Exit-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Export-Alias", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Export-Clixml", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Export-Console", , $($FullCLR ) +"Cmdlet", "Export-Counter", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Export-Csv", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Export-FormatData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Export-ModuleMember", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Export-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "ForEach-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Format-Custom", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Format-Default", , $($FullCLR ) +"Cmdlet", "Format-Hex", , $( $CoreWindows -or $CoreUnix) +"Cmdlet", "Format-List", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Format-Table", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Format-Wide", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Acl", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-Alias", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-AuthenticodeSignature", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-ChildItem", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Clipboard", , $($FullCLR ) +"Cmdlet", "Get-CmsMessage", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-Command", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-ComputerInfo", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-ComputerRestorePoint", , $($FullCLR ) +"Cmdlet", "Get-Content", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-ControlPanelItem", , $($FullCLR ) +"Cmdlet", "Get-Counter", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-Credential", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Culture", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Date", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Event", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-EventLog", , $($FullCLR ) +"Cmdlet", "Get-EventSubscriber", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-ExecutionPolicy", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-FileHash", , $( $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-FormatData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Help", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-History", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Host", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-HotFix", , $($FullCLR ) +"Cmdlet", "Get-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-ItemPropertyValue", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Location", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Member", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Module", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PfxCertificate", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Process", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSBreakpoint", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSCallStack", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSDrive", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSHostProcessInfo", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSProvider", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSSessionCapability", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSSessionConfiguration", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-PSSnapin", , $($FullCLR ) +"Cmdlet", "Get-Random", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Runspace", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-RunspaceDebug", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-TimeZone", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-TraceSource", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Transaction", , $($FullCLR ) +"Cmdlet", "Get-TypeData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Uptime", , $( $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-UICulture", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Unique", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Variable", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-Verb", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Get-WinEvent", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-WmiObject", , $($FullCLR ) +"Cmdlet", "Get-WSManCredSSP", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Get-WSManInstance", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Group-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-Alias", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-Clixml", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-Counter", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Import-Csv", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-LocalizedData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-Module", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-PowerShellDataFile", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Import-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-Command", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-Expression", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-History", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-RestMethod", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-WebRequest", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Invoke-WmiMethod", , $($FullCLR ) +"Cmdlet", "Invoke-WSManAction", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Join-Path", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Limit-EventLog", , $($FullCLR ) +"Cmdlet", "Measure-Command", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Measure-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Move-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Move-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-Alias", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-Event", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-EventLog", , $($FullCLR ) +"Cmdlet", "New-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-FileCatalog", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "New-GUID", , $( $CoreWindows -or $CoreUnix) +"Cmdlet", "New-Module", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-ModuleManifest", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-PSDrive", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-PSRoleCapabilityFile", , $( $CoreWindows -or $CoreUnix) +"Cmdlet", "New-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-PSSessionConfigurationFile", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-PSSessionOption", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-PSTransportOption", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "New-TemporaryFile", , $( $CoreWindows -or $CoreUnix) +"Cmdlet", "New-TimeSpan", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-Variable", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "New-WebServiceProxy", , $($FullCLR ) +"Cmdlet", "New-WinEvent", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "New-WSManInstance", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "New-WSManSessionOption", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Out-Default", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Out-File", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Out-GridView", , $($FullCLR ) +"Cmdlet", "Out-Host", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Out-LineOutput", , $($FullCLR ) +"Cmdlet", "Out-Null", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Out-Printer", , $($FullCLR ) +"Cmdlet", "Out-String", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Pop-Location", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Protect-CmsMessage", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Push-Location", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Read-Host", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Receive-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Receive-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Register-ArgumentCompleter", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Register-EngineEvent", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Register-ObjectEvent", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Register-PSSessionConfiguration", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Register-WmiEvent", , $($FullCLR ) +"Cmdlet", "Remove-Computer", , $($FullCLR ) +"Cmdlet", "Remove-Event", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-EventLog", , $($FullCLR ) +"Cmdlet", "Remove-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-Module", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-PSBreakpoint", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-PSDrive", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-PSSession", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-PSSnapin", , $($FullCLR ) +"Cmdlet", "Remove-TypeData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-Variable", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Remove-WmiObject", , $($FullCLR ) +"Cmdlet", "Remove-WSManInstance", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Rename-Computer", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Rename-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Rename-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Reset-ComputerMachinePassword", , $($FullCLR ) +"Cmdlet", "Resolve-Path", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Restart-Computer", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Restart-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Restore-Computer", , $($FullCLR ) +"Cmdlet", "Resume-Job", , $($FullCLR ) +"Cmdlet", "Resume-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Save-Help", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Select-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Select-String", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Select-Xml", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Send-MailMessage", , $($FullCLR ) +"Cmdlet", "Set-Acl", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Set-Alias", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-AuthenticodeSignature", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Set-Clipboard", , $($FullCLR ) +"Cmdlet", "Set-Content", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-Date", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-ExecutionPolicy", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-Item", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-ItemProperty", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-Location", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-PSBreakpoint", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-PSDebug", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-PSSessionConfiguration", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Set-StrictMode", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-TimeZone", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Set-TraceSource", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-Variable", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Set-WmiInstance", , $($FullCLR ) +"Cmdlet", "Set-WSManInstance", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Set-WSManQuickConfig", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Show-Command", , $($FullCLR ) +"Cmdlet", "Show-ControlPanelItem", , $($FullCLR ) +"Cmdlet", "Show-EventLog", , $($FullCLR ) +"Cmdlet", "Sort-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Split-Path", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Start-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Start-Process", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Start-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Start-Sleep", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Start-Transaction", , $($FullCLR ) +"Cmdlet", "Start-Transcript", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Stop-Computer", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Stop-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Stop-Process", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Stop-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Stop-Transcript", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Suspend-Job", , $($FullCLR ) +"Cmdlet", "Suspend-Service", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Tee-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Test-ComputerSecureChannel", , $($FullCLR ) +"Cmdlet", "Test-Connection", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Test-FileCatalog", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Test-ModuleManifest", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Test-Path", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Test-PSSessionConfigurationFile", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Test-WSMan", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Trace-Command", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Unblock-File", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Undo-Transaction", , $($FullCLR ) +"Cmdlet", "Unprotect-CmsMessage", , $($FullCLR -or $CoreWindows ) +"Cmdlet", "Unregister-Event", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Unregister-PSSessionConfiguration", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Update-FormatData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Update-Help", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Update-List", , $($FullCLR ) +"Cmdlet", "Update-TypeData", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Use-Transaction", , $($FullCLR ) +"Cmdlet", "Wait-Debugger", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Wait-Event", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Wait-Job", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Wait-Process", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Where-Object", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Debug", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Error", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-EventLog", , $($FullCLR ) +"Cmdlet", "Write-Host", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Information", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Output", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Progress", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Verbose", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"Cmdlet", "Write-Warning", , $($FullCLR -or $CoreWindows -or $CoreUnix) +"@ + + $aliaslist = $commandList | ConvertFrom-CSV -Delimiter "," | Where-Object { $_.Present -eq "True" -and $_.CommandType -eq "Alias" } | ForEach-Object { "{0} -> {1}" -f $_.Name, $_.Definition} + $cmdletlist = $commandList | ConvertFrom-CSV -Delimiter "," | Where-Object { $_.Present -eq "True" -and $_.CommandType -eq "Cmdlet" } | Select-Object -ExpandProperty Name + + # We control only default engine aliases (Source -eq "") and aliases from following default loaded modules + # We control only default engine Cmdlets (Source -eq "") and Cmdlets from following default loaded modules + $moduleList = @("Microsoft.PowerShell.Utility", "Microsoft.PowerShell.Management", "Microsoft.PowerShell.Security", "Microsoft.PowerShell.Host", "Microsoft.PowerShell.Diagnostics", "PSWorkflow", "Microsoft.WSMan.Management", "Microsoft.PowerShell.Core") + Import-Module -Name $moduleList -ErrorAction SilentlyContinue + + # We would use the session state to get default alias and cmdlet list + # instead of Get-Alias and Get-Command + # but latest is more simple use. + #$iis = [initialsessionstate]::CreateDefault() + #$currentCmdletList = $iis.Commands | Where-Object { $_.CommandType -eq "Cmdlet"} | Select-Object -ExpandProperty Name + } + + It "All approved aliases present (no aliases removed, no new aliases added)" { + $currentAliasList = Get-Alias | Where-Object { $_.Source -eq "" -or $moduleList -contains $_.Source } | Select-Object -ExpandProperty DisplayName + $result = Compare-Object -ReferenceObject $currentAliasList -DifferenceObject $aliaslist + # Below 'Should Be' don't show full list wrong aliases so we output them explicitly + # if all aliases is Ok we output nothing + $result | Write-Host + $result | Should Be $null + } + + It "All approved Cmdlets present (no Cmdlets removed, no new Cmdlets added)" { + $currentCmdletList = (Get-Command -CommandType Cmdlet | Where-Object { $moduleList -contains $_.Source }).Name + $result = Compare-Object -ReferenceObject $currentCmdletList -DifferenceObject $cmdletlist + # Below 'Should Be' don't show full list wrong Cmdlets so we output them explicitly + # if all Cmdlets is Ok we output nothing + $result | Write-Host + $result | Should Be $null + } +} From 113e43b908aafb9d2c9ef80141150d4ed24ef527 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Mon, 15 May 2017 13:33:52 +0300 Subject: [PATCH 04/14] Remove unneeded tests --- .../TimeZone.Tests.ps1 | 8 -------- .../Clear-Variable.Tests.ps1 | 6 ------ .../Get-Variable.Tests.ps1 | 4 ---- .../Invoke-Expression.Tests.ps1 | 12 ------------ .../New-Variable.Tests.ps1 | 7 ------- .../Remove-PSBreakpoint.Tests.ps1 | 10 ---------- .../Remove-Variable.Tests.ps1 | 11 ----------- .../Select-String.Tests.ps1 | 12 ++++-------- 8 files changed, 4 insertions(+), 66 deletions(-) diff --git a/test/powershell/Modules/Microsoft.PowerShell.Management/TimeZone.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Management/TimeZone.Tests.ps1 index 3ac4b6f64f6..782fcd0292f 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Management/TimeZone.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Management/TimeZone.Tests.ps1 @@ -113,10 +113,6 @@ Describe "Get-Timezone test cases" -Tags "CI" { Assert-ListsSame $expectedIdList $result } - It "Verify that alias 'gtz' exists" { - (Get-Alias -Name "gtz").Name | Should Be "gtz" - } - It "Call Get-TimeZone Name parameter from pipeline by value " { $result = ("Pacific*" | Get-TimeZone).Id $expectedIdList = ($TimeZonesAvailable | Where-Object { $_.StandardName -match "^Pacific" }).Id @@ -211,10 +207,6 @@ try { } } - It "Verify that alias 'stz' exists" { - (Get-Alias -Name "stz").Name | Should Be "stz" - } - It "Call Set-TimeZone from pipeline input object of type TimeZoneInfo" { $origTimeZoneID = (Get-TimeZone).Id $timezoneList = Get-TimeZone -ListAvailable diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Clear-Variable.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Clear-Variable.Tests.ps1 index cfde94aae2c..fa514737f40 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Clear-Variable.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Clear-Variable.Tests.ps1 @@ -114,12 +114,6 @@ Describe "Clear-Variable" -Tags "CI" { { Get-Variable var1 } | Should Not Throw } - It "Should work using the clv alias" { - clv -Name var1 - $var1 | Should BeNullOrEmpty - { Get-Variable var1 } | Should Not Throw - } - It "Should be able to include a set of variables to clear" { $var1 = 2 $var2 = 3 diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Get-Variable.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Get-Variable.Tests.ps1 index ca518074841..147b5f0952d 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Get-Variable.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Get-Variable.Tests.ps1 @@ -71,10 +71,6 @@ Describe "Get-Variable" -Tags "CI" { (Get-Variable tempVar).Value | Should Be (1) } - It "Should be able to call using the gv alias" { - (get-alias gv).Definition | Should be "Get-Variable" - } - It "Should be able to call using the Name switch" { New-Variable -Name var1 -Value 4 diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Invoke-Expression.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Invoke-Expression.Tests.ps1 index 7a2aae5415d..8283479c7b1 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Invoke-Expression.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Invoke-Expression.Tests.ps1 @@ -6,10 +6,6 @@ Describe "Invoke-Expression" -Tags "CI" { (Invoke-Expression -command "echo pestertest1") | Should be "pestertest1" } - It "Should return the echoed text for the alias" { - (iex -command "echo pestertest2") | Should Be "pestertest2" - } - It "Should return the echoed text from a script" { $testfile = Join-Path -Path (Join-Path $PSScriptRoot -ChildPath assets) -ChildPath echoscript.ps1 $testcommand = "echo pestertestscript" @@ -17,14 +13,6 @@ Describe "Invoke-Expression" -Tags "CI" { (Invoke-Expression "& '$testfile'") | Should Be "pestertestscript" Remove-Item "$testfile" } - - It "Should return the echoed text from a script from the alias" { - $testfile = Join-Path -Path (Join-Path $PSScriptRoot -ChildPath assets) -ChildPath echoscript.ps1 - $testcommand = "echo pestertestscript" - $testcommand | Add-Content -Path "$testfile" - (iex "& '$testfile'") | Should Be "pestertestscript" - Remove-Item "$testfile" - } } } Describe "Invoke-Expression DRT Unit Tests" -Tags "CI" { diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/New-Variable.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/New-Variable.Tests.ps1 index 2052742afb7..e420f0e2624 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/New-Variable.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/New-Variable.Tests.ps1 @@ -84,13 +84,6 @@ Describe "New-Variable" -Tags "CI" { (Get-Variable var1).Description | Should Be "Test Description" } - It "Should be able to be called with the nv alias" { - nv var1 - $var1 | Should BeNullOrEmpty - nv var2 2 - $var2 | Should Be 2 - } - It "Should not be able to set the name of a new variable to that of an old variable within same scope when the Force switch is missing" { New-Variable var1 (New-Variable var1 -ErrorAction SilentlyContinue) | Should Throw diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-PSBreakpoint.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-PSBreakpoint.Tests.ps1 index 3c88c7aaca9..642295d147e 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-PSBreakpoint.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-PSBreakpoint.Tests.ps1 @@ -49,16 +49,6 @@ Get-Date } } - Context "Alias Tests" { - It "Should remove a breakpoint using the rbp alias" { - $NumberOfBreakpoints = $(Get-PSBreakpoint).Id.length - $BreakID = $(Get-PSBreakpoint).Id[0] - rbp -Id $BreakID - - $(Get-PSBreakpoint).Id.length | Should Be ($NumberOfBreakpoints -1) - } - } - It "Should Remove all breakpoints" { $(Get-PSBreakpoint).Id.Length | Should Not BeNullOrEmpty diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-Variable.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-Variable.Tests.ps1 index 64e3f76a09d..f76483f1d18 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-Variable.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Remove-Variable.Tests.ps1 @@ -28,17 +28,6 @@ Describe "Remove-Variable" -Tags "CI" { Remove-Variable -Name nonexistentVariable -ErrorAction SilentlyContinue | Should Throw } - It "Should be able to remove a variable using the rv alias" { - New-Variable var1 -Value 2 - - $var1 | Should Be 2 - - rv -Name var1 - - $var1 | Should Be #nothing. it should be Nothing at all. - - } - It "Should be able to remove a set of variables using wildcard characters" { New-Variable tmpvar1 -Value "tempvalue" New-Variable tmpvar2 -Value 2 diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 index f1e8ddd0415..9a56f828eca 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 @@ -9,14 +9,10 @@ Describe "Select-String" -Tags "CI" { { $testinputone | Select-String -Pattern "hello" } | Should Not Throw } - it "Should be called without error using the sls alias" { - { $testinputone | sls -Pattern "hello" } | Should Not Throw - } - - it "Should return an array data type when multiple matches are found" { - $result = $testinputtwo | Select-String -Pattern "hello" - ,$result | Should BeOfType "System.Array" - } + it "Should return an array data type when multiple matches are found" { + $result = $testinputtwo | Select-String -Pattern "hello" + ,$result | Should BeOfType "System.Array" + } it "Should return the same result for the alias sls and Select-String " { $firstMatch = $testinputone | Select-String -Pattern "hello" From 609649b3e6b260708c69e2da7bd67647e7936765 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Mon, 15 May 2017 15:12:16 +0300 Subject: [PATCH 05/14] Add comment --- src/System.Management.Automation/engine/InitialSessionState.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index 760e79be808..c3f3c88e576 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5893,6 +5893,9 @@ private static void AnalyzeModuleAssemblyWithReflection(Assembly assembly, strin var aliasList = new List(); foreach (var alias in aliasAttribute.AliasNames) { + // We add aliases from custom modules with 'ScopedItemOptions.None' + // because only a module consumer (not the module author) decides + // whether the alias is read only and available in all scopes. var aliasEntry = new SessionStateAliasEntry(alias, cmdletName, "", ScopedItemOptions.None); if (psSnapInInfo != null) { From b40f5a1cdbf28ccaa753969ea869560821ee2958 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Tue, 16 May 2017 06:49:52 +0300 Subject: [PATCH 06/14] Remove if/def CORECLR --- .../commands/management/GetClipboardCommand.cs | 6 +----- .../commands/management/SetClipboardCommand.cs | 6 +----- 2 files changed, 2 insertions(+), 10 deletions(-) diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs index d1651c1e040..176ee347211 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetClipboardCommand.cs @@ -1,6 +1,4 @@ -#if !CORECLR - -using System; +using System; using System.Management.Automation; using System.Collections.Generic; using System.Windows.Forms; @@ -202,5 +200,3 @@ private PSObject WrapOutputInPSObject( } } } - -#endif diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs index 3011d5ef370..a8e917ea73e 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/SetClipboardCommand.cs @@ -1,6 +1,4 @@ -#if !CORECLR - -using System; +using System; using System.Management.Automation; using System.Collections.Generic; using System.Globalization; @@ -420,5 +418,3 @@ private static int GetByteCount(StringBuilder sb, int start = 0, int end = -1) } } } - -#endif From f59b878ee6ac2c356055d903795cbbce775a3bbe Mon Sep 17 00:00:00 2001 From: iSazonov Date: Tue, 16 May 2017 12:48:53 +0300 Subject: [PATCH 07/14] Move new aliases to modules --- .../commands/management/GetComputerInfoCommand.cs | 1 + .../commands/management/TimeZoneCommands.cs | 2 ++ .../engine/InitialSessionState.cs | 13 ++++--------- 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs index d884421ae7c..4e925a30b1c 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/GetComputerInfoCommand.cs @@ -26,6 +26,7 @@ namespace Microsoft.PowerShell.Commands /// [Cmdlet(VerbsCommon.Get, "ComputerInfo", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799466")] + [Alias("gin")] [OutputType(typeof(ComputerInfo), typeof(PSObject))] public class GetComputerInfoCommand : PSCmdlet { diff --git a/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs b/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs index 45d16e70f2b..213ac8cf27c 100644 --- a/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs +++ b/src/Microsoft.PowerShell.Commands.Management/commands/management/TimeZoneCommands.cs @@ -14,6 +14,7 @@ namespace Microsoft.PowerShell.Commands /// [Cmdlet(VerbsCommon.Get, "TimeZone", DefaultParameterSetName = "Name", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799468")] + [Alias("gtz")] public class GetTimeZoneCommand : PSCmdlet { #region Parameters @@ -117,6 +118,7 @@ protected override void ProcessRecord() SupportsShouldProcess = true, DefaultParameterSetName = "Name", HelpUri = "https://go.microsoft.com/fwlink/?LinkId=799469")] + [Alias("stz")] public class SetTimeZoneCommand : PSCmdlet { #region string constants diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index c3f3c88e576..24657576706 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5054,8 +5054,6 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Get-ItemPropertyValue", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gps", "Get-Process", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("gtz", - "Get-TimeZone", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("group", "Group-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gu", @@ -5149,12 +5147,8 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Copy-ItemProperty", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("diff", "Compare-Object", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("gin", - "Get-ComputerInfo", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("gsv", "Get-Service", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("stz", - "Set-TimeZone", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sleep", "Start-Sleep", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("sort", @@ -5893,9 +5887,10 @@ private static void AnalyzeModuleAssemblyWithReflection(Assembly assembly, strin var aliasList = new List(); foreach (var alias in aliasAttribute.AliasNames) { - // We add aliases from custom modules with 'ScopedItemOptions.None' - // because only a module consumer (not the module author) decides - // whether the alias is read only and available in all scopes. + // Alias declared by AliasAttribute is set with the option 'ScopedItemOptions.None', + // because we believe a user of the cmdlet, instead of the author of it, + // should be the one to decide the option + // ('ScopedItemOptions.ReadOnly' and/or 'ScopedItemOptions.AllScopes') of the alias usage." var aliasEntry = new SessionStateAliasEntry(alias, cmdletName, "", ScopedItemOptions.None); if (psSnapInInfo != null) { From 6ea398077a0364ca1b3e071a1ddef347a2bf330e Mon Sep 17 00:00:00 2001 From: iSazonov Date: Wed, 17 May 2017 14:24:09 +0300 Subject: [PATCH 08/14] Fix [Alias ("fhx")] --- .../commands/utility/FormatAndOutput/format-hex/Format-Hex.cs | 1 + src/System.Management.Automation/engine/InitialSessionState.cs | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs b/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs index 26f40ecb9e6..b1c65d3f2b1 100644 --- a/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs +++ b/src/Microsoft.PowerShell.Commands.Utility/commands/utility/FormatAndOutput/format-hex/Format-Hex.cs @@ -14,6 +14,7 @@ namespace Microsoft.PowerShell.Commands /// [Cmdlet(VerbsCommon.Format, "Hex", SupportsShouldProcess = true, HelpUri ="https://go.microsoft.com/fwlink/?LinkId=526919")] [OutputType(typeof(Microsoft.PowerShell.Commands.ByteCollection))] + [Alias ("fhx")] public sealed class FormatHex : PSCmdlet { private const int BUFFERSIZE = 16; diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index 24657576706..2595f7d0ffe 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5016,8 +5016,6 @@ internal static SessionStateAliasEntry[] BuiltInAliases "Export-Alias", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("epcsv", "Export-Csv", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), - new SessionStateAliasEntry("fhx", - "Format-Hex", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("fl", "Format-List", "", ScopedItemOptions.ReadOnly | ScopedItemOptions.AllScope), new SessionStateAliasEntry("ft", From 790ba5a21b37d5587928e67487da13181ad15492 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Wed, 17 May 2017 14:55:20 +0300 Subject: [PATCH 09/14] Remove 'cfs' alias --- src/System.Management.Automation/engine/InitialSessionState.cs | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/System.Management.Automation/engine/InitialSessionState.cs b/src/System.Management.Automation/engine/InitialSessionState.cs index 2595f7d0ffe..dec502579fd 100644 --- a/src/System.Management.Automation/engine/InitialSessionState.cs +++ b/src/System.Management.Automation/engine/InitialSessionState.cs @@ -5279,8 +5279,6 @@ internal static SessionStateAliasEntry[] BuiltInAliases new SessionStateAliasEntry("wjb", "Wait-Job", "", ScopedItemOptions.AllScope), #if !CORECLR - new SessionStateAliasEntry("cfs", - "ConvertFrom-String", "", ScopedItemOptions.AllScope), new SessionStateAliasEntry("sujb", "Suspend-Job", "", ScopedItemOptions.AllScope), new SessionStateAliasEntry("rujb", From b74d04c1a529f571622c200f566ef37105b70ef2 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Wed, 17 May 2017 15:26:03 +0300 Subject: [PATCH 10/14] Remove comment --- test/powershell/engine/DefaultCommands.Tests.ps1 | 6 ------ 1 file changed, 6 deletions(-) diff --git a/test/powershell/engine/DefaultCommands.Tests.ps1 b/test/powershell/engine/DefaultCommands.Tests.ps1 index a5d65199ad4..fd42fe2479e 100644 --- a/test/powershell/engine/DefaultCommands.Tests.ps1 +++ b/test/powershell/engine/DefaultCommands.Tests.ps1 @@ -469,12 +469,6 @@ Describe "Verify approved aliases list" -Tags "CI" { # We control only default engine Cmdlets (Source -eq "") and Cmdlets from following default loaded modules $moduleList = @("Microsoft.PowerShell.Utility", "Microsoft.PowerShell.Management", "Microsoft.PowerShell.Security", "Microsoft.PowerShell.Host", "Microsoft.PowerShell.Diagnostics", "PSWorkflow", "Microsoft.WSMan.Management", "Microsoft.PowerShell.Core") Import-Module -Name $moduleList -ErrorAction SilentlyContinue - - # We would use the session state to get default alias and cmdlet list - # instead of Get-Alias and Get-Command - # but latest is more simple use. - #$iis = [initialsessionstate]::CreateDefault() - #$currentCmdletList = $iis.Commands | Where-Object { $_.CommandType -eq "Cmdlet"} | Select-Object -ExpandProperty Name } It "All approved aliases present (no aliases removed, no new aliases added)" { From 8f4aaffbfc1321924fea9834feafd2774a21342a Mon Sep 17 00:00:00 2001 From: iSazonov Date: Wed, 17 May 2017 15:27:03 +0300 Subject: [PATCH 11/14] Remove unneeded alias test --- .../Microsoft.PowerShell.Utility/Select-String.Tests.ps1 | 8 -------- 1 file changed, 8 deletions(-) diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 index 9a56f828eca..27cd5bf9e9d 100644 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 +++ b/test/powershell/Modules/Microsoft.PowerShell.Utility/Select-String.Tests.ps1 @@ -14,14 +14,6 @@ Describe "Select-String" -Tags "CI" { ,$result | Should BeOfType "System.Array" } - it "Should return the same result for the alias sls and Select-String " { - $firstMatch = $testinputone | Select-String -Pattern "hello" - $secondMatch = $testinputone | sls -Pattern "hello" - - $equal = @(compare-object $firstMatch $secondMatch).Length -eq 0 - $equal | Should Be True - } - it "Should return an object type when one match is found" { $result = $testinputtwo | Select-String -Pattern "hello" -CaseSensitive ,$result | Should BeOfType "System.Object" From 158cb3b954d9434f35c8f445a57a7ffde132bccf Mon Sep 17 00:00:00 2001 From: iSazonov Date: Thu, 18 May 2017 09:38:20 +0300 Subject: [PATCH 12/14] Fix changes in .psd1 files --- .../Microsoft.PowerShell.Management.psd1 | 1 + .../Microsoft.PowerShell.Utility.psd1 | 1 + .../Microsoft.PowerShell.Management.psd1 | 1 + .../Microsoft.PowerShell.Utility.psd1 | 1 + .../Microsoft.PowerShell.Management.psd1 | 1 + .../Microsoft.PowerShell.Utility.psd1 | 1 + 6 files changed, 6 insertions(+) diff --git a/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index de0f7f818ae..5bf08654f8e 100644 --- a/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Unix/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,6 +7,7 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' +AliasesToExport = @("gtz") FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index 6cf478214fd..a5f20d41b1c 100644 --- a/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Unix/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -24,6 +24,7 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger" , "Get-Uptime", "New-TemporaryFile", "Get-Verb", "Format-Hex" FunctionsToExport= "Import-PowerShellDataFile" +AliasesToExport= "fhx" NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index ecb5ea4a8ab..9a8bdff1565 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -7,6 +7,7 @@ ModuleVersion="3.1.0.0" PowerShellVersion="3.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' +AliasesToExport = @("gin", "gtz", "stz") FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index d13a22ab188..f601e2d50f8 100644 --- a/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Windows-Core/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -24,6 +24,7 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Unblock-File", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger" , "Get-Uptime", "Get-Verb", "Format-Hex" FunctionsToExport= "ConvertFrom-SddlString" +AliasesToExport= "fhx" NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 index 3b435ff859a..6325b6fe97d 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Management/Microsoft.PowerShell.Management.psd1 @@ -8,6 +8,7 @@ PowerShellVersion="3.0" CLRVersion="4.0" NestedModules="Microsoft.PowerShell.Commands.Management.dll" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390785' +AliasesToExport = @("gcb", "scb", "gin", "gtz", "stz") FunctionsToExport = @() CmdletsToExport=@("Add-Content", "Clear-Content", diff --git a/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 b/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 index 988736ed0cf..25008e2703a 100644 --- a/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 +++ b/src/Modules/Windows-Full/Microsoft.PowerShell.Utility/Microsoft.PowerShell.Utility.psd1 @@ -26,6 +26,7 @@ CmdletsToExport= "Format-List", "Format-Custom", "Format-Table", "Format-Wide", "Get-Runspace", "Debug-Runspace", "Enable-RunspaceDebug", "Disable-RunspaceDebug", "Get-RunspaceDebug", "Wait-Debugger", "ConvertFrom-String", "Convert-String" , "Get-Uptime", "New-TemporaryFile", "Get-Verb", "Format-Hex" FunctionsToExport= "ConvertFrom-SddlString" +AliasesToExport= "CFS", "fhx" NestedModules="Microsoft.PowerShell.Commands.Utility.dll","Microsoft.PowerShell.Utility.psm1" HelpInfoURI = 'https://go.microsoft.com/fwlink/?linkid=390787' } From 705d3de2d8361895dd5ae46d711d34734785c877 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Thu, 18 May 2017 11:18:07 +0300 Subject: [PATCH 13/14] Add checks for alias options and minor refactoring --- .../engine/DefaultCommands.Tests.ps1 | 374 ++++++++++-------- 1 file changed, 205 insertions(+), 169 deletions(-) diff --git a/test/powershell/engine/DefaultCommands.Tests.ps1 b/test/powershell/engine/DefaultCommands.Tests.ps1 index fd42fe2479e..3bc6ccca5dc 100644 --- a/test/powershell/engine/DefaultCommands.Tests.ps1 +++ b/test/powershell/engine/DefaultCommands.Tests.ps1 @@ -3,167 +3,172 @@ Describe "Verify approved aliases list" -Tags "CI" { $FullCLR = !$isCoreCLR $CoreWindows = $isCoreCLR -and $IsWindows $CoreUnix = $isCoreCLR -and !$IsWindows - $commandList = @" -"CommandType", "Name", "Definition", "Present" -"Alias", "%", "ForEach-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "?", "Where-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ac", "Add-Content", $($FullCLR -or $CoreWindows ) -"Alias", "asnp", "Add-PSSnapIn", $($FullCLR ) -"Alias", "cat", "Get-Content", $($FullCLR -or $CoreWindows ) -"Alias", "cd", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "CFS", "ConvertFrom-String", $($FullCLR ) -"Alias", "chdir", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "clc", "Clear-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "clear", "Clear-Host", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "clhy", "Clear-History", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "cli", "Clear-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "clp", "Clear-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "cls", "Clear-Host", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "clv", "Clear-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "cnsn", "Connect-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "compare", "Compare-Object", $($FullCLR -or $CoreWindows ) -"Alias", "copy", "Copy-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "cp", "Copy-Item", $($FullCLR -or $CoreWindows ) -"Alias", "cpi", "Copy-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "cpp", "Copy-ItemProperty", $($FullCLR -or $CoreWindows ) -"Alias", "curl", "Invoke-WebRequest", $($FullCLR ) -"Alias", "cvpa", "Convert-Path", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "dbp", "Disable-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "del", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "diff", "Compare-Object", $($FullCLR -or $CoreWindows ) -"Alias", "dir", "Get-ChildItem", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "dnsn", "Disconnect-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ebp", "Enable-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "echo", "Write-Output", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "epal", "Export-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "epcsv", "Export-Csv", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "epsn", "Export-PSSession", $($FullCLR ) -"Alias", "erase", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "etsn", "Enter-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "exsn", "Exit-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "fc", "Format-Custom", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "fhx", "Format-Hex", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "fl", "Format-List", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "foreach", "ForEach-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ft", "Format-Table", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "fw", "Format-Wide", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gal", "Get-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gbp", "Get-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gc", "Get-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gcb", "Get-Clipboard", $($FullCLR ) -"Alias", "gci", "Get-ChildItem", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gcm", "Get-Command", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gcs", "Get-PSCallStack", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gdr", "Get-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ghy", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gi", "Get-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gin", "Get-ComputerInfo", $($FullCLR -or $CoreWindows ) -"Alias", "gjb", "Get-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gl", "Get-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gm", "Get-Member", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gmo", "Get-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gp", "Get-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gps", "Get-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gpv", "Get-ItemPropertyValue", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "group", "Group-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gsn", "Get-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gsnp", "Get-PSSnapIn", $($FullCLR ) -"Alias", "gsv", "Get-Service", $($FullCLR -or $CoreWindows ) -"Alias", "gtz", "Get-TimeZone", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gu", "Get-Unique", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gv", "Get-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "gwmi", "Get-WmiObject", $($FullCLR ) -"Alias", "h", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "history", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "icm", "Invoke-Command", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "iex", "Invoke-Expression", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ihy", "Invoke-History", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ii", "Invoke-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ipal", "Import-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ipcsv", "Import-Csv", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ipmo", "Import-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ipsn", "Import-PSSession", $($FullCLR ) -"Alias", "irm", "Invoke-RestMethod", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ise", "powershell_ise.exe", $($FullCLR ) -"Alias", "iwmi", "Invoke-WMIMethod", $($FullCLR ) -"Alias", "iwr", "Invoke-WebRequest", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "kill", "Stop-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "lp", "Out-Printer", $($FullCLR ) -"Alias", "ls", "Get-ChildItem", $($FullCLR -or $CoreWindows ) -"Alias", "man", "help", $($FullCLR -or $CoreWindows ) -"Alias", "md", "mkdir", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "measure", "Measure-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "mi", "Move-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "mount", "New-PSDrive", $($FullCLR -or $CoreWindows ) -"Alias", "move", "Move-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "mp", "Move-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "mv", "Move-Item", $($FullCLR -or $CoreWindows ) -"Alias", "nal", "New-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ndr", "New-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ni", "New-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "nmo", "New-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "npssc", "New-PSSessionConfigurationFile", $($FullCLR ) -"Alias", "nsn", "New-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "nv", "New-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "nwsn", "New-PSWorkflowSession", $($FullCLR ) -"Alias", "ogv", "Out-GridView", $($FullCLR ) -"Alias", "oh", "Out-Host", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "popd", "Pop-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ps", "Get-Process", $($FullCLR -or $CoreWindows ) -"Alias", "pushd", "Push-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "pwd", "Get-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "r", "Invoke-History", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rbp", "Remove-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rcjb", "Receive-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rcsn", "Receive-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rd", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rdr", "Remove-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ren", "Rename-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "ri", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rjb", "Remove-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rm", "Remove-Item", $($FullCLR -or $CoreWindows ) -"Alias", "rmdir", "Remove-Item", $($FullCLR -or $CoreWindows ) -"Alias", "rmo", "Remove-Module", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rni", "Rename-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rnp", "Rename-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rp", "Remove-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rsn", "Remove-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rsnp", "Remove-PSSnapin", $($FullCLR ) -"Alias", "rujb", "Resume-Job", $($FullCLR ) -"Alias", "rv", "Remove-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rvpa", "Resolve-Path", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "rwmi", "Remove-WMIObject", $($FullCLR ) -"Alias", "sajb", "Start-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "sal", "Set-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "saps", "Start-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "sasv", "Start-Service", $($FullCLR -or $CoreWindows ) -"Alias", "sbp", "Set-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "sc", "Set-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "scb", "Set-Clipboard", $($FullCLR ) -"Alias", "select", "Select-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "set", "Set-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "shcm", "Show-Command", $($FullCLR ) -"Alias", "si", "Set-Item", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "sl", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "sleep", "Start-Sleep", $($FullCLR -or $CoreWindows ) -"Alias", "sls", "Select-String", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "sort", "Sort-Object", $($FullCLR -or $CoreWindows ) -"Alias", "sp", "Set-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "spjb", "Stop-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "spps", "Stop-Process", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "spsv", "Stop-Service", $($FullCLR -or $CoreWindows ) -"Alias", "start", "Start-Process", $($FullCLR -or $CoreWindows ) -"Alias", "stz", "Set-TimeZone", $($FullCLR -or $CoreWindows ) -"Alias", "sujb", "Suspend-Job", $($FullCLR ) -"Alias", "sv", "Set-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "swmi", "Set-WMIInstance", $($FullCLR ) -"Alias", "tee", "Tee-Object", $($FullCLR -or $CoreWindows ) -"Alias", "trcm", "Trace-Command", $($FullCLR ) -"Alias", "type", "Get-Content", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "wget", "Invoke-WebRequest", $($FullCLR ) -"Alias", "where", "Where-Object", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "wjb", "Wait-Job", $($FullCLR -or $CoreWindows -or $CoreUnix) -"Alias", "write", "Write-Output", $($FullCLR -or $CoreWindows ) + + $AllScope = '[System.Management.Automation.ScopedItemOptions]::AllScope' + $ReadOnly = '[System.Management.Automation.ScopedItemOptions]::ReadOnly' + $None = '[System.Management.Automation.ScopedItemOptions]::None' + + $commandString = @" +"CommandType", "Name", "Definition", "Present", "ReadOnlyOption", "AllScopeOption" +"Alias", "%", "ForEach-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "?", "Where-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ac", "Add-Content", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "asnp", "Add-PSSnapIn", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "cat", "Get-Content", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "cd", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "CFS", "ConvertFrom-String", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "chdir", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "clc", "Clear-Content", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "clear", "Clear-Host", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "clhy", "Clear-History", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "cli", "Clear-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "clp", "Clear-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "cls", "Clear-Host", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "clv", "Clear-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "cnsn", "Connect-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "compare", "Compare-Object", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "copy", "Copy-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "cp", "Copy-Item", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "cpi", "Copy-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "cpp", "Copy-ItemProperty", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "curl", "Invoke-WebRequest", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "cvpa", "Convert-Path", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "dbp", "Disable-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "del", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "diff", "Compare-Object", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "dir", "Get-ChildItem", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "dnsn", "Disconnect-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ebp", "Enable-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "echo", "Write-Output", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "epal", "Export-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "epcsv", "Export-Csv", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "epsn", "Export-PSSession", $($FullCLR ), "", "AllScope" +"Alias", "erase", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "etsn", "Enter-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "exsn", "Exit-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "fc", "Format-Custom", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "fhx", "Format-Hex", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "" +"Alias", "fl", "Format-List", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "foreach", "ForEach-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ft", "Format-Table", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "fw", "Format-Wide", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gal", "Get-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gbp", "Get-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gc", "Get-Content", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gcb", "Get-Clipboard", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "gci", "Get-ChildItem", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gcm", "Get-Command", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gcs", "Get-PSCallStack", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gdr", "Get-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ghy", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gi", "Get-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gin", "Get-ComputerInfo", $($FullCLR -or $CoreWindows ), "", "" +"Alias", "gjb", "Get-Job", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "gl", "Get-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gm", "Get-Member", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gmo", "Get-Module", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gp", "Get-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gps", "Get-Process", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gpv", "Get-ItemPropertyValue", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "group", "Group-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gsn", "Get-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "gsnp", "Get-PSSnapIn", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "gsv", "Get-Service", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "gtz", "Get-TimeZone", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "" +"Alias", "gu", "Get-Unique", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gv", "Get-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "gwmi", "Get-WmiObject", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "h", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "history", "Get-History", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "icm", "Invoke-Command", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "iex", "Invoke-Expression", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ihy", "Invoke-History", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ii", "Invoke-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ipal", "Import-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ipcsv", "Import-Csv", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ipmo", "Import-Module", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ipsn", "Import-PSSession", $($FullCLR ), "", "AllScope" +"Alias", "irm", "Invoke-RestMethod", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ise", "powershell_ise.exe", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "iwmi", "Invoke-WMIMethod", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "iwr", "Invoke-WebRequest", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "kill", "Stop-Process", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "lp", "Out-Printer", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "ls", "Get-ChildItem", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "man", "help", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "md", "mkdir", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "measure", "Measure-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "mi", "Move-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "mount", "New-PSDrive", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "move", "Move-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "mp", "Move-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "mv", "Move-Item", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "nal", "New-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ndr", "New-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ni", "New-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "nmo", "New-Module", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "npssc", "New-PSSessionConfigurationFile", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "nsn", "New-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "nv", "New-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "nwsn", "New-PSWorkflowSession", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "ogv", "Out-GridView", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "oh", "Out-Host", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "popd", "Pop-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "ps", "Get-Process", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "pushd", "Push-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "pwd", "Get-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "r", "Invoke-History", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "rbp", "Remove-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rcjb", "Receive-Job", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "rcsn", "Receive-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rd", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "rdr", "Remove-PSDrive", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "ren", "Rename-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "ri", "Remove-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rjb", "Remove-Job", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "rm", "Remove-Item", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "rmdir", "Remove-Item", $($FullCLR -or $CoreWindows ), "", "AllScope" +"Alias", "rmo", "Remove-Module", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rni", "Rename-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rnp", "Rename-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rp", "Remove-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rsn", "Remove-PSSession", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "rsnp", "Remove-PSSnapin", $($FullCLR ), "", "AllScope" +"Alias", "rujb", "Resume-Job", $($FullCLR ), "", "AllScope" +"Alias", "rv", "Remove-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rvpa", "Resolve-Path", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "rwmi", "Remove-WMIObject", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "sajb", "Start-Job", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "sal", "Set-Alias", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "saps", "Start-Process", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "sasv", "Start-Service", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "sbp", "Set-PSBreakpoint", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "sc", "Set-Content", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "scb", "Set-Clipboard", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "select", "Select-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "set", "Set-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "shcm", "Show-Command", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "si", "Set-Item", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "sl", "Set-Location", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "sleep", "Start-Sleep", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "sls", "Select-String", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "" +"Alias", "sort", "Sort-Object", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "sp", "Set-ItemProperty", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "spjb", "Stop-Job", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "spps", "Stop-Process", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "spsv", "Stop-Service", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "start", "Start-Process", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "stz", "Set-TimeZone", $($FullCLR -or $CoreWindows ), "", "" +"Alias", "sujb", "Suspend-Job", $($FullCLR ), "", "AllScope" +"Alias", "sv", "Set-Variable", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "swmi", "Set-WMIInstance", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "tee", "Tee-Object", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" +"Alias", "trcm", "Trace-Command", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "type", "Get-Content", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "wget", "Invoke-WebRequest", $($FullCLR ), "ReadOnly", "AllScope" +"Alias", "where", "Where-Object", $($FullCLR -or $CoreWindows -or $CoreUnix), "ReadOnly", "AllScope" +"Alias", "wjb", "Wait-Job", $($FullCLR -or $CoreWindows -or $CoreUnix), "", "AllScope" +"Alias", "write", "Write-Output", $($FullCLR -or $CoreWindows ), "ReadOnly", "AllScope" "Cmdlet", "Add-Computer", , $($FullCLR ) "Cmdlet", "Add-Content", , $($FullCLR -or $CoreWindows -or $CoreUnix) "Cmdlet", "Add-History", , $($FullCLR -or $CoreWindows -or $CoreUnix) @@ -462,27 +467,58 @@ Describe "Verify approved aliases list" -Tags "CI" { "Cmdlet", "Write-Warning", , $($FullCLR -or $CoreWindows -or $CoreUnix) "@ - $aliaslist = $commandList | ConvertFrom-CSV -Delimiter "," | Where-Object { $_.Present -eq "True" -and $_.CommandType -eq "Alias" } | ForEach-Object { "{0} -> {1}" -f $_.Name, $_.Definition} - $cmdletlist = $commandList | ConvertFrom-CSV -Delimiter "," | Where-Object { $_.Present -eq "True" -and $_.CommandType -eq "Cmdlet" } | Select-Object -ExpandProperty Name - # We control only default engine aliases (Source -eq "") and aliases from following default loaded modules # We control only default engine Cmdlets (Source -eq "") and Cmdlets from following default loaded modules $moduleList = @("Microsoft.PowerShell.Utility", "Microsoft.PowerShell.Management", "Microsoft.PowerShell.Security", "Microsoft.PowerShell.Host", "Microsoft.PowerShell.Diagnostics", "PSWorkflow", "Microsoft.WSMan.Management", "Microsoft.PowerShell.Core") Import-Module -Name $moduleList -ErrorAction SilentlyContinue + $currentAliasList = Get-Alias | Where-Object { $_.Source -eq "" -or $moduleList -contains $_.Source } + + $commandList = $commandString | ConvertFrom-CSV -Delimiter "," + $aliasFullList = $commandList | Where-Object { $_.Present -eq "True" -and $_.CommandType -eq "Alias" } + } + + It "All approved aliases present (no new aliases added, no aliases removed)" { + $currentDisplayNameAliasList = $currentAliasList | Select-Object -ExpandProperty DisplayName + $aliasDisplayNameAliasList = $aliasFullList | ForEach-Object { "{0} -> {1}" -f $_.Name, $_.Definition} + + $result = Compare-Object -ReferenceObject $currentDisplayNameAliasList -DifferenceObject $aliasDisplayNameAliasList + + # Below 'Should Be' don't show full list wrong aliases so we output them explicitly + # if all aliases is Ok we output nothing + $result | Write-Host + $result | Should Be $null } - It "All approved aliases present (no aliases removed, no new aliases added)" { - $currentAliasList = Get-Alias | Where-Object { $_.Source -eq "" -or $moduleList -contains $_.Source } | Select-Object -ExpandProperty DisplayName - $result = Compare-Object -ReferenceObject $currentAliasList -DifferenceObject $aliaslist + It "All approved aliases have the correct 'AllScope' option" { + $aliasAllScopeOptionList = $aliasFullList | Where-Object { $_.AllScopeOption -eq "AllScope"} | ForEach-Object { "{0} -> {1}" -f $_.Name, $_.Definition} + $currentAllScopeOptionList = $currentAliasList | Where-Object { $_.Options -band [System.Management.Automation.ScopedItemOptions]::AllScope } | Select-Object -ExpandProperty DisplayName + + $result = Compare-Object -ReferenceObject $currentAllScopeOptionList -DifferenceObject $aliasAllScopeOptionList + + # Below 'Should Be' don't show full list wrong aliases so we output them explicitly + # if all aliases is Ok we output nothing + $result | Write-Host + $result | Should Be $null + } + + It "All approved aliases have the correct 'ReadOnly' option" { + $aliasReadOnlyOptionList = $aliasFullList | Where-Object { $_.ReadOnlyOption -eq "ReadOnly"} | ForEach-Object { "{0} -> {1}" -f $_.Name, $_.Definition} + $currentReadOnlyOptionList = $currentAliasList | Where-Object { $_.Options -band [System.Management.Automation.ScopedItemOptions]::ReadOnly } | Select-Object -ExpandProperty DisplayName + + $result = Compare-Object -ReferenceObject $currentReadOnlyOptionList -DifferenceObject $aliasReadOnlyOptionList + # Below 'Should Be' don't show full list wrong aliases so we output them explicitly # if all aliases is Ok we output nothing $result | Write-Host $result | Should Be $null } - It "All approved Cmdlets present (no Cmdlets removed, no new Cmdlets added)" { + It "All approved Cmdlets present (no new Cmdlets added, no Cmdlets removed)" { + $cmdletList = $commandList | Where-Object { $_.Present -eq "True" -and $_.CommandType -eq "Cmdlet" } | Select-Object -ExpandProperty Name $currentCmdletList = (Get-Command -CommandType Cmdlet | Where-Object { $moduleList -contains $_.Source }).Name - $result = Compare-Object -ReferenceObject $currentCmdletList -DifferenceObject $cmdletlist + + $result = Compare-Object -ReferenceObject $currentCmdletList -DifferenceObject $cmdletList + # Below 'Should Be' don't show full list wrong Cmdlets so we output them explicitly # if all Cmdlets is Ok we output nothing $result | Write-Host From 3bba7ae6fc83056011c56ce8753dc81ce6880f18 Mon Sep 17 00:00:00 2001 From: iSazonov Date: Mon, 22 May 2017 07:29:01 +0300 Subject: [PATCH 14/14] Remove duplicated alias tests --- .../Default-Aliases.Tests.ps1 | 206 ------------------ .../engine/DefaultCommands.Tests.ps1 | 4 + 2 files changed, 4 insertions(+), 206 deletions(-) delete mode 100644 test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 diff --git a/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 b/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 deleted file mode 100644 index 07e41cb9ede..00000000000 --- a/test/powershell/Modules/Microsoft.PowerShell.Utility/Default-Aliases.Tests.ps1 +++ /dev/null @@ -1,206 +0,0 @@ -Describe "Windows aliases do not conflict with Linux commands" -Tags "CI" { - BeforeAll { - $removeAliasList = @("ac","compare","cpp","diff","sleep","sort","start","cat","cp","ls","man","mount","mv","ps","rm","rmdir") - $keepAliasList = @{cd="Set-Location"},@{dir="Get-ChildItem"},@{echo="Write-output"},@{fc="format-custom"},@{kill="stop-process"},@{clear="clear-host"} - } - - foreach ($alias in $removeAliasList) { - It "Should not have certain aliases on Linux" -Skip:$IsWindows { - Test-Path Alias:$alias | Should Be $false - } - } - - foreach ($alias in $keepAliasList) { - It "Should have aliases that are Bash built-ins on Linux" { - (Get-Alias $alias.Keys).Definition | Should Be $alias.Values - } - } - - It "Should have more as a function" { - Test-Path Function:more | Should Be $true - } -} - - -Describe "Verify approved aliases list" -Tags "CI" { - BeforeAll { - $FullCLR = !$isCoreCLR - $CoreWindows = $isCoreCLR -and $IsWindows - $CoreUnix = $isCoreCLR -and !$IsWindows - $aliasFullList = @{ - "% -> ForEach-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "? -> Where-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "ac -> Add-Content" = $FullCLR -or $CoreWindows - "asnp -> Add-PSSnapin" = $FullCLR - "cat -> Get-Content" = $FullCLR -or $CoreWindows - "cd -> Set-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "CFS -> ConvertFrom-String" = $FullCLR - "chdir -> Set-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "clc -> Clear-Content" = $FullCLR -or $CoreWindows -or $CoreUnix - "clear -> Clear-Host" = $FullCLR -or $CoreWindows -or $CoreUnix - "clhy -> Clear-History" = $FullCLR -or $CoreWindows -or $CoreUnix - "cli -> Clear-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "clp -> Clear-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix - "cls -> Clear-Host" = $FullCLR -or $CoreWindows -or $CoreUnix - "clv -> Clear-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix - "cnsn -> Connect-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "compare -> Compare-Object" = $FullCLR -or $CoreWindows - "copy -> Copy-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "cp -> Copy-Item" = $FullCLR -or $CoreWindows - "cpi -> Copy-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "cpp -> Copy-ItemProperty" = $FullCLR -or $CoreWindows - "curl -> Invoke-WebRequest" = $FullCLR - "cvpa -> Convert-Path" = $FullCLR -or $CoreWindows -or $CoreUnix - "dbp -> Disable-PSBreakpoint" = $FullCLR -or $CoreWindows -or $CoreUnix - "del -> Remove-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "diff -> Compare-Object" = $FullCLR -or $CoreWindows - "dir -> Get-ChildItem" = $FullCLR -or $CoreWindows -or $CoreUnix - "dnsn -> Disconnect-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "ebp -> Enable-PSBreakpoint" = $FullCLR -or $CoreWindows -or $CoreUnix - "echo -> Write-Output" = $FullCLR -or $CoreWindows -or $CoreUnix - "epal -> Export-Alias" = $FullCLR -or $CoreWindows -or $CoreUnix - "epcsv -> Export-Csv" = $FullCLR -or $CoreWindows -or $CoreUnix - "epsn -> Export-PSSession" = $FullCLR - "erase -> Remove-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "etsn -> Enter-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "exsn -> Exit-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "fc -> Format-Custom" = $FullCLR -or $CoreWindows -or $CoreUnix - "fhx -> Format-Hex" = $FullCLR -or $CoreWindows -or $CoreUnix - "fl -> Format-List" = $FullCLR -or $CoreWindows -or $CoreUnix - "foreach -> ForEach-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "ft -> Format-Table" = $FullCLR -or $CoreWindows -or $CoreUnix - "fw -> Format-Wide" = $FullCLR -or $CoreWindows -or $CoreUnix - "gal -> Get-Alias" = $FullCLR -or $CoreWindows -or $CoreUnix - "gbp -> Get-PSBreakpoint" = $FullCLR -or $CoreWindows -or $CoreUnix - "gc -> Get-Content" = $FullCLR -or $CoreWindows -or $CoreUnix - "gcb -> Get-Clipboard" = $FullCLR - "gci -> Get-ChildItem" = $FullCLR -or $CoreWindows -or $CoreUnix - "gcm -> Get-Command" = $FullCLR -or $CoreWindows -or $CoreUnix - "gcs -> Get-PSCallStack" = $FullCLR -or $CoreWindows -or $CoreUnix - "gdr -> Get-PSDrive" = $FullCLR -or $CoreWindows -or $CoreUnix - "ghy -> Get-History" = $FullCLR -or $CoreWindows -or $CoreUnix - "gi -> Get-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "gin -> Get-ComputerInfo" = $FullCLR -or $CoreWindows - "gjb -> Get-Job" = $FullCLR -or $CoreWindows -or $CoreUnix - "gl -> Get-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "gm -> Get-Member" = $FullCLR -or $CoreWindows -or $CoreUnix - "gmo -> Get-Module" = $FullCLR -or $CoreWindows -or $CoreUnix - "gp -> Get-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix - "gps -> Get-Process" = $FullCLR -or $CoreWindows -or $CoreUnix - "gpv -> Get-ItemPropertyValue" = $FullCLR -or $CoreWindows -or $CoreUnix - "group -> Group-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "gsn -> Get-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "gsnp -> Get-PSSnapin" = $FullCLR - "gsv -> Get-Service" = $FullCLR -or $CoreWindows - "gtz -> Get-TimeZone" = $FullCLR -or $CoreWindows -or $CoreUnix - "gu -> Get-Unique" = $FullCLR -or $CoreWindows -or $CoreUnix - "gv -> Get-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix - "gwmi -> Get-WmiObject" = $FullCLR - "h -> Get-History" = $FullCLR -or $CoreWindows -or $CoreUnix - "history -> Get-History" = $FullCLR -or $CoreWindows -or $CoreUnix - "icm -> Invoke-Command" = $FullCLR -or $CoreWindows -or $CoreUnix - "iex -> Invoke-Expression" = $FullCLR -or $CoreWindows -or $CoreUnix - "ihy -> Invoke-History" = $FullCLR -or $CoreWindows -or $CoreUnix - "ii -> Invoke-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "ipal -> Import-Alias" = $FullCLR -or $CoreWindows -or $CoreUnix - "ipcsv -> Import-Csv" = $FullCLR -or $CoreWindows -or $CoreUnix - "ipmo -> Import-Module" = $FullCLR -or $CoreWindows -or $CoreUnix - "ipsn -> Import-PSSession" = $FullCLR - "irm -> Invoke-RestMethod" = $FullCLR -or $CoreWindows -or $CoreUnix - "ise -> powershell_ise.exe" = $FullCLR - "iwmi -> Invoke-WmiMethod" = $FullCLR - "iwr -> Invoke-WebRequest" = $FullCLR -or $CoreWindows -or $CoreUnix - "kill -> Stop-Process" = $FullCLR -or $CoreWindows -or $CoreUnix - "lp -> Out-Printer" = $FullCLR - "ls -> Get-ChildItem" = $FullCLR -or $CoreWindows - "man -> help" = $FullCLR -or $CoreWindows - "md -> mkdir" = $FullCLR -or $CoreWindows -or $CoreUnix - "measure -> Measure-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "mi -> Move-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "mount -> New-PSDrive" = $FullCLR -or $CoreWindows - "move -> Move-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "mp -> Move-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix - "mv -> Move-Item" = $FullCLR -or $CoreWindows - "nal -> New-Alias" = $FullCLR -or $CoreWindows -or $CoreUnix - "ndr -> New-PSDrive" = $FullCLR -or $CoreWindows -or $CoreUnix - "ni -> New-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "nmo -> New-Module" = $FullCLR -or $CoreWindows -or $CoreUnix - "npssc -> New-PSSessionConfigurationFile" = $FullCLR - "nsn -> New-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "nv -> New-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix - "nwsn -> New-PSWorkflowSession" = $FullCLR - "ogv -> Out-GridView" = $FullCLR - "oh -> Out-Host" = $FullCLR -or $CoreWindows -or $CoreUnix - "popd -> Pop-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "ps -> Get-Process" = $FullCLR -or $CoreWindows - "pushd -> Push-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "pwd -> Get-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "r -> Invoke-History" = $FullCLR -or $CoreWindows -or $CoreUnix - "rbp -> Remove-PSBreakpoint" = $FullCLR -or $CoreWindows -or $CoreUnix - "rcjb -> Receive-Job" = $FullCLR -or $CoreWindows -or $CoreUnix - "rcsn -> Receive-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "rd -> Remove-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "rdr -> Remove-PSDrive" = $FullCLR -or $CoreWindows -or $CoreUnix - "ren -> Rename-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "ri -> Remove-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "rjb -> Remove-Job" = $FullCLR -or $CoreWindows -or $CoreUnix - "rm -> Remove-Item" = $FullCLR -or $CoreWindows - "rmdir -> Remove-Item" = $FullCLR -or $CoreWindows - "rmo -> Remove-Module" = $FullCLR -or $CoreWindows -or $CoreUnix - "rni -> Rename-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "rnp -> Rename-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix - "rp -> Remove-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix - "rsn -> Remove-PSSession" = $FullCLR -or $CoreWindows -or $CoreUnix - "rsnp -> Remove-PSSnapin" = $FullCLR - "rujb -> Resume-Job" = $FullCLR - "rv -> Remove-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix - "rvpa -> Resolve-Path" = $FullCLR -or $CoreWindows -or $CoreUnix - "rwmi -> Remove-WmiObject" = $FullCLR - "sajb -> Start-Job" = $FullCLR -or $CoreWindows -or $CoreUnix - "sal -> Set-Alias" = $FullCLR -or $CoreWindows -or $CoreUnix - "saps -> Start-Process" = $FullCLR -or $CoreWindows -or $CoreUnix - "sasv -> Start-Service" = $FullCLR -or $CoreWindows - "sbp -> Set-PSBreakpoint" = $FullCLR -or $CoreWindows -or $CoreUnix - "sc -> Set-Content" = $FullCLR -or $CoreWindows -or $CoreUnix - "scb -> Set-Clipboard" = $FullCLR - "select -> Select-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "set -> Set-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix - "shcm -> Show-Command" = $FullCLR - "si -> Set-Item" = $FullCLR -or $CoreWindows -or $CoreUnix - "sl -> Set-Location" = $FullCLR -or $CoreWindows -or $CoreUnix - "sleep -> Start-Sleep" = $FullCLR -or $CoreWindows - "sls -> Select-String" = $FullCLR -or $CoreWindows -or $CoreUnix - "sort -> Sort-Object" = $FullCLR -or $CoreWindows - "sp -> Set-ItemProperty" = $FullCLR -or $CoreWindows -or $CoreUnix - "spjb -> Stop-Job" = $FullCLR -or $CoreWindows -or $CoreUnix - "spps -> Stop-Process" = $FullCLR -or $CoreWindows -or $CoreUnix - "spsv -> Stop-Service" = $FullCLR -or $CoreWindows - "start -> Start-Process" = $FullCLR -or $CoreWindows - "stz -> Set-TimeZone" = $CoreWindows - "sujb -> Suspend-Job" = $FullCLR - "sv -> Set-Variable" = $FullCLR -or $CoreWindows -or $CoreUnix - "swmi -> Set-WmiInstance" = $FullCLR - "tee -> Tee-Object" = $FullCLR -or $CoreWindows - "trcm -> Trace-Command" = $FullCLR - "type -> Get-Content" = $FullCLR -or $CoreWindows -or $CoreUnix - "wget -> Invoke-WebRequest" = $FullCLR - "where -> Where-Object" = $FullCLR -or $CoreWindows -or $CoreUnix - "wjb -> Wait-Job" = $FullCLR -or $CoreWindows -or $CoreUnix - "write -> Write-Output" = $FullCLR -or $CoreWindows - } - - $aliaslist = @($aliasFullList.Keys | ForEach-Object { if ($aliasFullList[$_]) { $_ } }) - } - - - It "All approved aliases present (no aliases removed, no new aliases added)" { - # We control only default engine aliases (Source -eq "") and aliases from following default loaded modules - $moduleList = @("Microsoft.PowerShell.Utility", "Microsoft.PowerShell.Management") - $currentAliasList = Get-Alias | Where-Object { $_.Source -eq "" -or $moduleList -contains $_.Source } | Select-Object -ExpandProperty DisplayName - $result = Compare-Object -ReferenceObject $currentAliasList -DifferenceObject $aliaslist - # Below 'Should Be' don't show full list wrong aliases so we output them explicitly - # if all aliases is Ok we output nothing - $result | Write-Host - $result | Should Be $null - } -} diff --git a/test/powershell/engine/DefaultCommands.Tests.ps1 b/test/powershell/engine/DefaultCommands.Tests.ps1 index 3bc6ccca5dc..21b1c2be833 100644 --- a/test/powershell/engine/DefaultCommands.Tests.ps1 +++ b/test/powershell/engine/DefaultCommands.Tests.ps1 @@ -524,4 +524,8 @@ Describe "Verify approved aliases list" -Tags "CI" { $result | Write-Host $result | Should Be $null } + + It "Should have 'more' as a function" { + Test-Path Function:more | Should Be $true + } }