Skip to content

Commit 66b56b9

Browse files
committed
New Test for splatted variable parameter renaming
1 parent b7d141c commit 66b56b9

File tree

4 files changed

+66
-0
lines changed

4 files changed

+66
-0
lines changed

test/PowerShellEditorServices.Test.Shared/Refactoring/Variables/RefactorsVariablesData.cs

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,5 +135,19 @@ internal static class RenameVariableData
135135
Line = 9,
136136
RenameTo = "Renamed"
137137
};
138+
public static readonly RenameSymbolParams VarableCommandParameterSplattedFromCommandAst = new()
139+
{
140+
FileName = "VarableCommandParameterSplatted.ps1",
141+
Column = 10,
142+
Line = 15,
143+
RenameTo = "Renamed"
144+
};
145+
public static readonly RenameSymbolParams VarableCommandParameterSplattedFromSplat = new()
146+
{
147+
FileName = "VarableCommandParameterSplatted.ps1",
148+
Column = 5,
149+
Line = 10,
150+
RenameTo = "Renamed"
151+
};
138152
}
139153
}
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
function New-User {
2+
param (
3+
[string]$Username,
4+
[string]$password
5+
)
6+
write-host $username + $password
7+
}
8+
9+
$UserDetailsSplat= @{
10+
Username = "JohnDoe"
11+
Password = "SomePassword"
12+
}
13+
New-User @UserDetailsSplat
14+
15+
New-User -Username "JohnDoe" -Password "SomePassword"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
function New-User {
2+
param (
3+
[string][Alias("Username")]$Renamed,
4+
[string]$password
5+
)
6+
write-host $Renamed + $password
7+
}
8+
9+
$UserDetailsSplat= @{
10+
Renamed = "JohnDoe"
11+
Password = "SomePassword"
12+
}
13+
New-User @UserDetailsSplat
14+
15+
New-User -Renamed "JohnDoe" -Password "SomePassword"

test/PowerShellEditorServices.Test/Refactoring/RefactorVariableTests.cs

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -253,6 +253,28 @@ public void VariableParameterCommandWithSameName()
253253

254254
string modifiedcontent = TestRenaming(scriptFile, request);
255255

256+
Assert.Equal(expectedContent.Contents, modifiedcontent);
257+
}
258+
[Fact]
259+
public void VarableCommandParameterSplattedFromCommandAst()
260+
{
261+
RenameSymbolParams request = RenameVariableData.VarableCommandParameterSplattedFromCommandAst;
262+
ScriptFile scriptFile = GetTestScript(request.FileName);
263+
ScriptFile expectedContent = GetTestScript(request.FileName.Substring(0, request.FileName.Length - 4) + "Renamed.ps1");
264+
265+
string modifiedcontent = TestRenaming(scriptFile, request);
266+
267+
Assert.Equal(expectedContent.Contents, modifiedcontent);
268+
}
269+
[Fact]
270+
public void VarableCommandParameterSplattedFromSplat()
271+
{
272+
RenameSymbolParams request = RenameVariableData.VarableCommandParameterSplattedFromSplat;
273+
ScriptFile scriptFile = GetTestScript(request.FileName);
274+
ScriptFile expectedContent = GetTestScript(request.FileName.Substring(0, request.FileName.Length - 4) + "Renamed.ps1");
275+
276+
string modifiedcontent = TestRenaming(scriptFile, request);
277+
256278
Assert.Equal(expectedContent.Contents, modifiedcontent);
257279
}
258280
}

0 commit comments

Comments
 (0)