6
6
$ModuleName = " FabricTools" ,
7
7
$expectedParams = @ (
8
8
" Response"
9
+ " ResponseHeader"
10
+ " StatusCode"
11
+ " Operation"
9
12
" ObjectIdOrName"
10
13
" TypeName"
14
+ " SuccessMessage"
11
15
" NoWait"
12
16
" Verbose"
13
17
" Debug"
@@ -44,8 +48,8 @@ Describe "Test-FabricApiResponse" -Tag "UnitTests" {
44
48
}
45
49
46
50
It " Should have exactly the number of expected parameters $ ( $expected.Count ) " {
47
- $hasparms = $command.Parameters.Values.Name
48
- Compare-Object - ReferenceObject $script :expected - DifferenceObject $hasparms | Should - BeNullOrEmpty
51
+ $hasParams = $command.Parameters.Values.Name
52
+ Compare-Object - ReferenceObject $script :expected - DifferenceObject $hasParams | Should - BeNullOrEmpty
49
53
}
50
54
}
51
55
}
@@ -74,30 +78,36 @@ Describe "Test-FabricApiResponse - StatusCode Handling" -Tag "UnitTests" {
74
78
Mock - CommandName Write-Message - MockWith { }
75
79
}
76
80
77
- It " Returns `$ null when statusCode is 200" {
81
+ It " Returns `$ null when statusCode is 200 and Operation is 'Get' " {
78
82
$script :statusCode = 200
79
- $result = Test-FabricApiResponse - Response $script :response
83
+ $result = Test-FabricApiResponse - Response $script :response - ResponseHeader $script :responseHeader - StatusCode $script :statusCode - Operation " Get"
84
+ $result | Should - Be $script :response
85
+ }
86
+
87
+ It " Returns response when statusCode is 200 and Operation is not 'Get'" {
88
+ $script :statusCode = 200
89
+ $result = Test-FabricApiResponse - Response $script :response - ResponseHeader $script :responseHeader - StatusCode $script :statusCode - Operation " New"
80
90
$result | Should - Be $null
81
91
}
82
92
83
93
It " Returns response when statusCode is 201" {
84
94
$script :statusCode = 201
85
- $result = Test-FabricApiResponse - Response $script :response
95
+ $result = Test-FabricApiResponse - Response $script :response - ResponseHeader $ script :responseHeader - StatusCode $ script :statusCode
86
96
$result | Should - Be $script :response
87
97
}
88
98
89
99
It " Returns operation result when statusCode is 202 and operation succeeds" {
90
100
$script :statusCode = 202
91
101
$expectedResult = " Completed"
92
- $result = Test-FabricApiResponse - Response $script :response
102
+ $result = Test-FabricApiResponse - Response $script :response - ResponseHeader $ script :responseHeader - StatusCode $ script :statusCode - Operation " Create " - ObjectIdOrName " TestObject " - TypeName " TestType "
93
103
$result | Should - Be $expectedResult
94
104
Should - Invoke Get-FabricLongRunningOperation - Exactly 1
95
105
Should - Invoke Get-FabricLongRunningOperationResult - Exactly 1
96
106
}
97
107
98
108
It " Returns PSCustomObject with 3 properties when statusCode is 202 and -NoWait is specified" {
99
109
$script :statusCode = 202
100
- $result = Test-FabricApiResponse - Response $script :response - NoWait
110
+ $result = Test-FabricApiResponse - Response $script :response - ResponseHeader $ script :responseHeader - StatusCode $ script :statusCode $ script :responseHeader - NoWait
101
111
102
112
$expected = [PSCustomObject ]@ {
103
113
Location = $script :responseHeader.Location
@@ -111,7 +121,7 @@ Describe "Test-FabricApiResponse - StatusCode Handling" -Tag "UnitTests" {
111
121
112
122
It " Throws when statusCode is not 200, 201, or 202" {
113
123
$script :statusCode = 400
114
- { Test-FabricApiResponse - Response $script :response - ErrorAction Stop } | Should - Throw
124
+ { Test-FabricApiResponse - Response $script :response - ResponseHeader $ script :responseHeader - StatusCode $ script :statusCode - ErrorAction Stop } | Should - Throw
115
125
}
116
126
}
117
127
0 commit comments