@@ -26,7 +26,7 @@ function Test-ValidateDeployment
26
26
27
27
# Test
28
28
New-AzResourceGroup - Name $rgname - Location $rglocation
29
-
29
+
30
30
$list = Test-AzureResourceGroupTemplate - ResourceGroupName $rgname - TemplateFile Build2014_Website_App.json - siteName $rname - hostingPlanName $rname - siteLocation $location - sku Free - workerSize 0
31
31
32
32
# Assert
@@ -50,7 +50,7 @@ function Test-NewDeploymentFromTemplateFile
50
50
{
51
51
# Test
52
52
New-AzResourceGroup - Name $rgname - Location $rglocation
53
-
53
+
54
54
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile sampleDeploymentTemplate.json - TemplateParameterFile sampleDeploymentTemplateParams.json
55
55
56
56
# Assert
@@ -61,7 +61,7 @@ function Test-NewDeploymentFromTemplateFile
61
61
$getById = Get-AzResourceGroupDeployment - Id $deploymentId
62
62
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
63
63
}
64
-
64
+
65
65
finally
66
66
{
67
67
# Cleanup
@@ -88,7 +88,7 @@ function Test-CrossResourceGroupDeploymentFromTemplateFile
88
88
# Test
89
89
New-AzResourceGroup - Name $rgname - Location $rglocation
90
90
New-AzResourceGroup - Name $rgname2 - Location $rglocation
91
-
91
+
92
92
$parameters = @ { " NestedDeploymentResourceGroup" = $rgname2 }
93
93
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile sampleTemplateWithCrossResourceGroupDeployment.json - TemplateParameterObject $parameters
94
94
@@ -104,7 +104,7 @@ function Test-CrossResourceGroupDeploymentFromTemplateFile
104
104
$nestedDeployment = Get-AzResourceGroupDeployment - Id $nestedDeploymentId
105
105
Assert-AreEqual Succeeded $nestedDeployment.ProvisioningState
106
106
}
107
-
107
+
108
108
finally
109
109
{
110
110
# Cleanup
@@ -159,7 +159,7 @@ function Test-NestedDeploymentFromTemplateFile
159
159
{
160
160
# Test
161
161
New-AzResourceGroup - Name $rgname - Location $rglocation
162
-
162
+
163
163
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile sampleNestedTemplate.json - TemplateParameterFile sampleNestedTemplateParams.json
164
164
165
165
# Assert
@@ -170,7 +170,7 @@ function Test-NestedDeploymentFromTemplateFile
170
170
$getById = Get-AzResourceGroupDeployment - Id $deploymentId
171
171
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
172
172
}
173
-
173
+
174
174
finally
175
175
{
176
176
# Cleanup
@@ -195,17 +195,17 @@ function Test-SaveDeploymentTemplateFile
195
195
{
196
196
# Test
197
197
New-AzResourceGroup - Name $rgname - Location $rglocation
198
-
198
+
199
199
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile sampleDeploymentTemplate.json - TemplateParameterFile sampleDeploymentTemplateParams.json
200
200
201
201
# Assert
202
202
Assert-AreEqual Succeeded $deployment.ProvisioningState
203
-
203
+
204
204
$saveOutput = Save-AzResourceGroupDeploymentTemplate - ResourceGroupName $rgname - DeploymentName $rname - Force
205
205
Assert-NotNull $saveOutput
206
206
Assert-True { $saveOutput.Path.Contains ($rname + " .json" ) }
207
207
}
208
-
208
+
209
209
finally
210
210
{
211
211
# Cleanup
@@ -239,7 +239,7 @@ function Test-NewDeploymentWithKeyVaultReference
239
239
$adUser = Get-AzADUser - UserPrincipalName $context.Account.Id
240
240
$objectId = $adUser.Id
241
241
$KeyVaultResourceId = " /subscriptions/" + $subscriptionId + " /resourcegroups/" + $rgname + " /providers/Microsoft.KeyVault/vaults/" + $keyVaultname
242
-
242
+
243
243
$parameters = @ { " keyVaultName" = $keyVaultname ; " secretName" = $secretName ; " secretValue" = $hostplanName ; " tenantId" = $tenantId ; " objectId" = $objectId }
244
244
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile keyVaultSetupTemplate.json - TemplateParameterObject $parameters
245
245
@@ -261,7 +261,7 @@ function Test-NewDeploymentWithKeyVaultReference
261
261
$getById = Get-AzResourceGroupDeployment - Id $deploymentId
262
262
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
263
263
}
264
-
264
+
265
265
finally
266
266
{
267
267
# Cleanup
@@ -284,7 +284,7 @@ function Test-NewDeploymentWithComplexPramaters
284
284
{
285
285
# Test
286
286
New-AzResourceGroup - Name $rgname - Location $rglocation
287
-
287
+
288
288
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile complexParametersTemplate.json - TemplateParameterFile complexParameters.json
289
289
290
290
# Assert
@@ -295,7 +295,7 @@ function Test-NewDeploymentWithComplexPramaters
295
295
$getById = Get-AzResourceGroupDeployment - Id $deploymentId
296
296
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
297
297
}
298
-
298
+
299
299
finally
300
300
{
301
301
# Cleanup
@@ -318,7 +318,7 @@ function Test-NewDeploymentWithParameterObject
318
318
{
319
319
# Test
320
320
New-AzResourceGroup - Name $rgname - Location $rglocation
321
-
321
+
322
322
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile complexParametersTemplate.json - TemplateParameterObject @ {appSku = @ {code = " f1" ; name = " Free" }; servicePlan = " plan1" ; ranks = @ (" c" , " d" )}
323
323
324
324
# Assert
@@ -329,7 +329,7 @@ function Test-NewDeploymentWithParameterObject
329
329
$getById = Get-AzResourceGroupDeployment - Id $deploymentId
330
330
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
331
331
}
332
-
332
+
333
333
finally
334
334
{
335
335
# Cleanup
@@ -352,7 +352,7 @@ function Test-NewDeploymentWithDynamicParameters
352
352
{
353
353
# Test
354
354
New-AzResourceGroup - Name $rgname - Location $rglocation
355
-
355
+
356
356
$deployment = New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile complexParametersTemplate.json - appSku @ {code = " f3" ; name = @ {major = " Official" ; minor = " 1.0" }} - servicePlan " plan1" - ranks @ (" c" , " d" )
357
357
358
358
# Assert
@@ -363,7 +363,7 @@ function Test-NewDeploymentWithDynamicParameters
363
363
$getById = Get-AzResourceGroupDeployment - Id $deploymentId
364
364
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
365
365
}
366
-
366
+
367
367
finally
368
368
{
369
369
# Cleanup
@@ -427,10 +427,66 @@ function Test-NewDeploymentWithKeyVaultReferenceInParameterObject
427
427
# Assert
428
428
Assert-AreEqual Succeeded $deployment.ProvisioningState
429
429
}
430
-
430
+
431
431
finally
432
432
{
433
433
# Cleanup
434
434
Clean - ResourceGroup $deploymentRG
435
435
}
436
+ }
437
+
438
+ <#
439
+ . SYNOPSIS
440
+ Tests deployment exception thrown with nonexistent template file.
441
+ #>
442
+ function Test-NewDeploymentFromNonexistentTemplateFile
443
+ {
444
+ # Setup
445
+ $rgname = Get-ResourceGroupName
446
+ $rname = Get-ResourceName
447
+ $rglocation = " West US 2"
448
+ try
449
+ {
450
+ # Test
451
+ New-AzResourceGroup - Name $rgname - Location $rglocation
452
+
453
+ # Assert exception is thrown
454
+ $path = (Get-Item " .\" ).FullName
455
+ $file = Join-Path $path " nonexistentFile.json"
456
+ $exceptionMessage = " Cannot retrieve the dynamic parameters for the cmdlet. Cannot find path '$file ' because it does not exist."
457
+ Assert-Throws { New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile $file - TemplateParameterFile sampleTemplateParams.json } $exceptionMessage
458
+ }
459
+ finally
460
+ {
461
+ # Cleanup
462
+ Clean - ResourceGroup $rgname
463
+ }
464
+ }
465
+
466
+ <#
467
+ . SYNOPSIS
468
+ Tests deployment exception thrown with nonexistent template parameter file.
469
+ #>
470
+ function Test-NewDeploymentFromNonexistentTemplateParameterFile
471
+ {
472
+ # Setup
473
+ $rgname = Get-ResourceGroupName
474
+ $rname = Get-ResourceName
475
+ $rglocation = " West US 2"
476
+ try
477
+ {
478
+ # Test
479
+ New-AzResourceGroup - Name $rgname - Location $rglocation
480
+
481
+ # Assert exception is thrown
482
+ $path = (Get-Item " .\" ).FullName
483
+ $file = Join-Path $path " nonexistentFile.json"
484
+ $exceptionMessage = " Cannot retrieve the dynamic parameters for the cmdlet. Cannot find path '$file ' because it does not exist."
485
+ Assert-Throws { New-AzResourceGroupDeployment - Name $rname - ResourceGroupName $rgname - TemplateFile sampleTemplateParams.json - TemplateParameterFile $file } $exceptionMessage
486
+ }
487
+ finally
488
+ {
489
+ # Cleanup
490
+ Clean - ResourceGroup $rgname
491
+ }
436
492
}
0 commit comments