Skip to content

Commit 27ca3a7

Browse files
committed
Tests for AvoidPositionalParameters rule fixes.
1 parent 32cb3dc commit 27ca3a7

File tree

1 file changed

+15
-13
lines changed

1 file changed

+15
-13
lines changed

Tests/Rules/AvoidPositionalParameters.tests.ps1

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -21,26 +21,28 @@ Describe "AvoidPositionalParameters" {
2121
It "returns no violations" {
2222
$noViolations.Count | Should -Be 0
2323
}
24-
24+
2525
It "returns no violations for DSC configuration" {
2626
$noViolationsDSC.Count | Should -Be 0
2727
}
2828
}
2929

3030
Context "Function defined and called in script, which has 3 or more positional parameters triggers rule." {
31-
$sb=
32-
{
33-
Function Foo {
34-
param(
35-
[Parameter(Mandatory=$true,Position=1)] $A,
36-
[Parameter(Position=2)]$B,
37-
[Parameter(Position=3)]$C)
31+
It "returns avoid positional parameters violation" {
32+
$sb=
33+
{
34+
Function Foo {
35+
param(
36+
[Parameter(Mandatory=$true,Position=1)] $A,
37+
[Parameter(Position=2)]$B,
38+
[Parameter(Position=3)]$C)
39+
}
40+
Foo "a" "b" "c"
3841
}
39-
Foo "a" "b" "c"
42+
$warnings = Invoke-ScriptAnalyzer -ScriptDefinition "$sb"
43+
$warnings.Count | Should -BeGreaterThan 0
44+
$warnings.RuleName | Should -Contain "PSAvoidUsingPositionalParameters"
45+
$warnings.Message | Should -Contain "Cmdlet 'Foo' has positional parameter. Please use named parameters instead of positional parameters when calling a command."
4046
}
41-
$warnings = Invoke-ScriptAnalyzer -ScriptDefinition "$sb"
42-
$warnings.Count | Should -BeGreaterThan 0
43-
$warning.RuleName | Should -Contain "PSAvoidUsingPositionalParameters"
44-
$warnings.Message | Should -Contain "Cmdlet 'Foo' has positional parameter. Please use named parameters instead of positional parameters when calling a command."
4547
}
4648
}

0 commit comments

Comments
 (0)