Skip to content

Commit eea37a8

Browse files
author
Harsh Patel
committed
Updated Test-GetResourceGroupDeploymentStackSnapshot
1 parent 74efcff commit eea37a8

File tree

1 file changed

+100
-20
lines changed

1 file changed

+100
-20
lines changed

src/Resources/Resources.Test/ScenarioTests/DeploymentStackTests.ps1

Lines changed: 100 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -64,27 +64,30 @@ Tests GET operation on deploymentStacksSnapshots at the RG scope
6464
#>
6565
function Test-GetResourceGroupDeploymentStackSnapshot
6666
{
67-
#Setup
67+
# Setup
6868
$rgname = Get-ResourceGroupName
6969
$rname = Get-ResourceName
7070
$rglocation = "West US 2"
7171
$subId = (Get-AzContext).Subscription.SubscriptionId
7272

73-
$vmName = "MyVM"
74-
$snapshotName = "snapshot"
75-
76-
7773
try
7874
{
79-
#Prepare
80-
New-AzVm -ResourceGroupName $rgname -Name $vmName -Location $rglocation -VirtualNetworkName "myVnet" -SubnetName "mySubnet" -SecurityGroupName "myNetworkSecurityGroup" -PublicIpAddressName "myPublicIpAddress" -OpenPorts 80,3389
81-
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmName
82-
$snapshot = New-AzSnapshotConfig -SourceUri $vm.StorageProfile.OsDisk.ManagedDisk.Id -Location $rglocation -CreateOption copy
83-
New-AzSnapshot -Snapshot $snapshot -SnapshotName $snapshotName -ResourceGroupName $rgname
84-
75+
# Prepare
8576
New-AzResourceGroup -Name $rgname -Location $rglocation
86-
$deployment = New-AzResourceGroupDeploymentStack -Name $rname -ResourceGroupName $rgname -TemplateFile simpleTemplate.js
87-
$resourceId = "/subscriptions/$subId/resourcegroups/$rgname/providers/Microsoft.Resources/deploymentStacks/$rname/snapshots/$snapshotName"
77+
78+
$deployment = New-AzResourceGroupDeploymentStack -Name $rname -ResourceGroupName $rgname -TemplateFile simpleTemplate.json -ParameterFile simpleTemplateParams.json
79+
$resourceId = "/subscriptions/$subId/resourcegroups/$rgname/providers/Microsoft.Resources/deploymentStacks/$rname"
80+
81+
$getByNameAndResourceGroup = Get-AzResourceGroupDeploymentStack -ResourceGroupName $rgname -Name $rname
82+
$provisioningState = $getByNameAndResourceGroup.provisioningState
83+
84+
while ($provisioningState == "failed"){
85+
$getByNameAndResourceGroup = Get-AzResourceGroupDeploymentStack -ResourceGroupName $rgname -Name $rname
86+
$provisioningState = $$getByNameAndResourceGroup.provisioningState
87+
}
88+
89+
$resourceId = $getByNameAndResourceGroup.snapshotId
90+
$snapshotName = ResourceIdUtility.GetResourceName($resourceId).Split('/')[0];
8891

8992
#Test - GetByIdAndSnapshotName
9093
$getByIdAndSnapshotName = Get-AzResourceGroupDeploymentStackSnapshot -ResourceId $resourceId -SnapshotName $snapshotName
@@ -103,15 +106,12 @@ function Test-GetResourceGroupDeploymentStackSnapshot
103106

104107
#Assert
105108
Assert-NotNull = $getByResourceGroupNameAndStackName
106-
107109
}
108-
109110
finally
110-
{
111-
# Cleanup
111+
{
112+
# Cleanup
112113
Clean-ResourceGroup $rgname
113-
114-
}
114+
}
115115
}
116116

117117

@@ -158,4 +158,84 @@ function Test-GetSubscriptionDeploymentStack
158158
}
159159
}
160160

161-
function
161+
<#
162+
.SYNOPSIS
163+
Tests REMOVE operation on deploymentStacks
164+
#>
165+
function Test-RemoveResourceGroupDeploymentStack
166+
{
167+
# Setup
168+
$rgname = Get-ResourceGroupName
169+
$rname = Get-ResourceName
170+
$rglocation = "West US 2"
171+
$subId = (Get-AzContext).Subscription.SubscriptionId
172+
173+
$resourceId = "/subscriptions/$subId/resourcegroups/$rgname/providers/Microsoft.Resources/deploymentStacks/$rname"
174+
175+
try
176+
{
177+
# Prepare
178+
New-AzResourceGroup -Name $rgname -Location $rglocation
179+
$deployment = New-AzResourceGroupDeploymentStack -Name $rname -ResourceGroupName $rgname -TemplateFile simpleTemplate.json -ParameterFile simpleTemplateParams.json
180+
181+
182+
# Test - removeByResourceId
183+
$removeByResourceId = Remove-AzResourceGroupDeploymentStack -ResourceId $resourceId
184+
185+
# Assert
186+
Assert-NotNull $removeByResourceId
187+
188+
#Prepare
189+
$deployment = New-AzResourceGroupDeploymentStack -Name $rname -ResourceGroupName $rgname -TemplateFile simpleTemplate.json -ParameterFile simpleTemplateParams.json
190+
191+
192+
# Test - removeByResourceNameAndResourceGroupName
193+
$removeByResourceNameAndResouceGroupName = Remove-AzResourceGroupDeploymentStack -ResourceGroupName $rgname -Name $rname
194+
195+
#Assert
196+
Assert-NotNull $removeByResourceNameAndResouceGroupName
197+
198+
}
199+
finally
200+
{
201+
# Cleanup
202+
Clean-ResourceGroup $rgname
203+
}
204+
}
205+
206+
207+
<#
208+
.SYNOPSIS
209+
Tests REMOVE operation on deploymentStacks at the subscription scope
210+
#>
211+
function Test-RemoveSubscriptionDeploymentStack
212+
{
213+
# Setup
214+
$rgname = Get-ResourceGroupName
215+
$rname = Get-ResourceName
216+
$rglocation = "West US 2"
217+
218+
try
219+
{
220+
# Prepare
221+
$deployment = New-AzSubscriptionDeploymentStack -Name $rname -TemplateFile simpleTemplate.json -ParameterFile simpleTemplateParams.json
222+
$resourceId = "/subscriptions/$subId/providers/Microsoft.Resources/deploymentStacks/$rname"
223+
224+
# Test - RemoveByName
225+
$removeByName = Remove-AzSubscriptionDeploymentStack -Name $rname
226+
227+
# Assert
228+
Assert-NotNull $removeByName
229+
230+
# Prepare
231+
New-AzSubscriptionDeploymentStack -Name $rname -TemplateFile simpleTemplate.json -ParameterFile simpleTemplateParams.json
232+
233+
# Test - RemoveByResourceId
234+
$removeByResourceId = Remove-AzSubscriptionDeploymentStack -ResourceId $resourceId
235+
236+
#Assert
237+
Assert-NotNull $removeByResourceId
238+
239+
}
240+
}
241+

0 commit comments

Comments
 (0)