-
Notifications
You must be signed in to change notification settings - Fork 521
Open
Assignees
@corbob
Description
Prerequisites
- I have written a descriptive issue title.
- I have searched all issues to ensure it has not already been reported.
- I have read the troubleshooting guide.
- I am sure this issue is with the extension itself and does not reproduce in a standalone PowerShell instance.
- I have verified that I am using the latest version of Visual Studio Code and the PowerShell extension.
- If this is a security issue, I have read the security issue reporting guidance.
Summary
With the code (note two spaces between )
and {
on line 7):
It "should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
When selecting to Format Document, results in:
It $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
When updating the code to include two spaces between -ForEach
and @(
:
It "should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
It correctly formats:
It "should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
And here's where it gets weird... When changing to three or more spaces on line 7:
It "should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
It does not format at all. Until... there are 2 or more spaces between -ForEach
and @{
, then it formats correctly.
Compounding the issue, if you remove the It
, the formatting works correctly.
"should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
Formats to:
"should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
Finally: When run through Invoke-Formatter
in the integrated terminal, formatting occurs as expected:
PS /Users/coryknox/git/chocolatey/ctk/16_engtasks_1510> Invoke-Formatter @' >> It "should create applications in Intune (<_>)" -ForEach @( >> $Packages >> @{ >> Name = 'installpackage' >> Version = '1.0.0' >> } >> ) { >> $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String >> } >> '@ It "should create applications in Intune (<_>)" -ForEach @( $Packages @{ Name = 'installpackage' Version = '1.0.0' } ) { $Output.Lines | Should -Contain "Application created in Intune: $_ ($" -Because $Output.String }
PowerShell Version
�[32;1mName Value�[0m �[32;1m---- -----�[0m PSVersion 7.2.3 PSEdition Core GitCommitId 7.2.3 OS Darwin 21.4.0 Darwin Kernel Version 21.4.0: Fri Mar 18 00:45:05 PDT 2022; root:xnu-8020.101.4~15/RELEASE_X86_64 Platform Unix PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...} PSRemotingProtocolVersion 2.3 SerializationVersion 1.1.0.1 WSManStackVersion 3.0
Visual Studio Code Version
1.67.0-insider ed2619e11b68bec43b788486230b0c2afeb4672d x64
Extension Version
ms-vscode.powershell@2021120 ms-vscode.powershell-preview@2022年4月3日 TylerLeonhardt.vscode-inline-values-powershell@0.0.5
Steps to Reproduce
See Summary above
Visuals
vscode.mp4
Logs
No response