Skip to content

Commit c0ebc5f

Browse files
committed
Added live test cases for KeyVault and Compute
1 parent 9518e59 commit c0ebc5f

File tree

2 files changed

+201
-3
lines changed

2 files changed

+201
-3
lines changed

src/Compute/Compute.Test/LiveTests/TestLiveScenarios.ps1

Lines changed: 69 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,76 @@ Invoke-LiveTestScenario -Name "Removes a virtual machine from Azure" -Descriptio
3838
$userData = [Convert]::ToBase64String($bytes);
3939

4040
New-AzVM -ResourceGroupName $rgName -Name $name -Credential $Credential -DomainNameLabel $domainNameLabel -UserData $userData;
41-
Remove-AzVM -ResourceGroupName $rgName -Name $name -Force
41+
Remove-AzVM -ResourceGroupName $rgName -Name $name -Force
4242

4343
$removedVM = Get-AzVM -ResourceGroupName $rgName -Name $name -ErrorAction SilentlyContinue
4444
Assert-Null $removedVM
4545
}
46+
47+
Invoke-LiveTestScenario -Name "Create a managed disk" -Description "Test creating a managed disk" -ScenarioScript `
48+
{
49+
param ($rg)
50+
51+
$rgName = $rg.ResourceGroupName
52+
$diskName = New-LiveTestResourceName
53+
$diskLocation = "westus"
54+
$diskSize = 10
55+
$diskSkuName = "Standard_LRS"
56+
57+
$diskCfg = New-AzDiskConfig -Location $diskLocation -DiskSizeGB $diskSize -SkuName $diskSkuName -OsType Windows -CreateOption Empty
58+
New-AzDisk -ResourceGroupName $rgName -DiskName $diskName -Disk $diskCfg | Out-Null
59+
$actual = Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName
60+
Assert-NotNull $actual
61+
Assert-AreEqual $rgName $actual.ResourceGroupName
62+
Assert-AreEqual $diskName $actual.Name
63+
Assert-AreEqual $diskLocation $actual.Location
64+
Assert-AreEqual $diskSize $actual.DiskSizeGB
65+
Assert-AreEqual $diskSkuName $actual.Sku.Name
66+
Assert-AreEqual Windows $actual.OsType
67+
}
68+
69+
Invoke-LiveTestScenario -Name "Update a managed disk" -Description "Test updating an existing managed disk" -ScenarioScript `
70+
{
71+
param ($rg)
72+
73+
$rgName = $rg.ResourceGroupName
74+
$diskName = New-LiveTestResourceName
75+
$diskLocation = "westus"
76+
$diskSize = 10
77+
$diskSizeUpdated = 20
78+
$diskSkuName = "Standard_LRS"
79+
$diskSkuNameUpdated = "StandardSSD_LRS"
80+
81+
$diskCfg = New-AzDiskConfig -Location $diskLocation -DiskSizeGB $diskSize -SkuName $diskSkuName -OsType Windows -CreateOption Empty
82+
New-AzDisk -ResourceGroupName $rgName -DiskName $diskName -Disk $diskCfg
83+
84+
$disk = Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName
85+
$disk.DiskSizeGB = $diskSizeUpdated
86+
Update-AzDisk -ResourceGroupName $rgName -DiskName $diskName -Disk $disk
87+
88+
$diskUpdateCfg = New-AzDiskUpdateConfig -SkuName $diskSkuNameUpdated
89+
Update-AzDisk -ResourceGroupName $rgName -DiskName $diskName -DiskUpdate $diskUpdateCfg
90+
91+
$actual = Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName
92+
Assert-NotNull $actual
93+
Assert-AreEqual $diskSizeUpdated $actual.DiskSizeGB
94+
Assert-AreEqual $diskSkuNameUpdated $actual.Sku.Name
95+
}
96+
97+
Invoke-LiveTestScenario -Name "Remove a managed disk" -Description "Test removing an existing managed disk" -ScenarioScript `
98+
{
99+
param ($rg)
100+
101+
$rgName = $rg.ResourceGroupName
102+
$diskName = New-LiveTestResourceName
103+
$diskLocation = "westus"
104+
$diskSize = 10
105+
$diskSkuName = "Standard_LRS"
106+
107+
$diskCfg = New-AzDiskConfig -Location $diskLocation -DiskSizeGB $diskSize -SkuName $diskSkuName -OsType Windows -CreateOption Empty
108+
New-AzDisk -ResourceGroupName $rgName -DiskName $diskName -Disk $diskCfg
109+
Remove-AzDisk -ResourceGroupName $rgName -DiskName $diskName -Force
110+
111+
$actual = Get-AzDisk -ResourceGroupName $rgName -DiskName $diskName -ErrorAction SilentlyContinue
112+
Assert-Null $actual
113+
}

src/KeyVault/KeyVault.Test/LiveTests/TestLiveScenarios.ps1

Lines changed: 132 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ Invoke-LiveTestScenario -Name "Create new standard key vault" -Description "Test
66
$vaultName = New-LiveTestResourceName
77
$vaultLocation = "westus"
88

9-
$actual = New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation
9+
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation
10+
$actual = Get-AzKeyVault -ResourceGroupName $rgName -VaultName $vaultName
1011
Assert-AreEqual $vaultName $actual.VaultName
1112
Assert-AreEqual $rgName $actual.ResourceGroupName
1213
Assert-AreEqual $vaultLocation $actual.Location
@@ -26,7 +27,8 @@ Invoke-LiveTestScenario -Name "Create new premium key vault" -Description "Test
2627
$vaultName = New-LiveTestResourceName
2728
$vaultLocation = "eastus"
2829

29-
$actual = New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation -Sku premium -EnabledForDeployment
30+
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation -Sku premium -EnabledForDeployment
31+
$actual = Get-AzKeyVault -ResourceGroupName $rgName -VaultName $vaultName
3032
Assert-AreEqual $vaultName $actual.VaultName
3133
Assert-AreEqual $rgName $actual.ResourceGroupName
3234
Assert-AreEqual $vaultLocation $actual.Location
@@ -76,3 +78,131 @@ Invoke-LiveTestScenario -Name "Delete key vault" -Description "Test deleting key
7678
# purge deleted vault
7779
Remove-AzKeyVault -VaultName $vaultName -Location $vaultLocation -InRemovedState -Force
7880
}
81+
82+
Invoke-LiveTestScenario -Name "Create key vault secret" -Description "Test creating a key vault secret" -ScenarioScript `
83+
{
84+
param ($rg)
85+
86+
$rgName = $rg.ResourceGroupName
87+
$vaultName = New-LiveTestResourceName
88+
$vaultLocation = "eastus"
89+
$secretName = New-LiveTestResourceName
90+
91+
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation
92+
$sp = Get-AzADServicePrincipal -ApplicationId (Get-AzContext).Account.Id
93+
$objectId = $sp.Id
94+
Set-AzKeyVaultAccessPolicy -VaultName $vaultName -ObjectId $objectId -PermissionsToSecrets get, set, list
95+
96+
$secretValue = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
97+
Set-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -SecretValue $secretValue
98+
99+
$actual = Get-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -ErrorAction SilentlyContinue
100+
Assert-NotNull $actual
101+
Assert-AreEqual $vaultName $actual.VaultName
102+
Assert-AreEqual $secretName $actual.Name
103+
}
104+
105+
Invoke-LiveTestScenario -Name "Create key vault secret with multi-versions" -Description "Test creating a key vault secret with multiple versions" -ScenarioScript `
106+
{
107+
param ($rg)
108+
109+
$rgName = $rg.ResourceGroupName
110+
$vaultName = New-LiveTestResourceName
111+
$vaultLocation = "westus"
112+
$secretName = New-LiveTestResourceName
113+
114+
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation
115+
$sp = Get-AzADServicePrincipal -ApplicationId (Get-AzContext).Account.Id
116+
$objectId = $sp.Id
117+
Set-AzKeyVaultAccessPolicy -VaultName $vaultName -ObjectId $objectId -PermissionsToSecrets get, set, list
118+
119+
$secretValue = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
120+
Set-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -SecretValue $secretValue
121+
Set-AzKeyVaultSecret -VaultName $vaultName -name $secretName -SecretValue $secretValue
122+
123+
$actual = Get-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -IncludeVersions -ErrorAction SilentlyContinue
124+
Assert-NotNull $actual
125+
Assert-AreEqual 2 $actual.Count
126+
}
127+
128+
Invoke-LiveTestScenario -Name "Update key vault secret attributes" -Description "Test updating attributes of a key vault secret" -ScenarioScript `
129+
{
130+
param ($rg)
131+
132+
$rgName = $rg.ResourceGroupName
133+
$vaultName = New-LiveTestResourceName
134+
$vaultLocation = "westus"
135+
$secretName = New-LiveTestResourceName
136+
137+
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation
138+
$sp = Get-AzADServicePrincipal -ApplicationId (Get-AzContext).Account.Id
139+
$objectId = $sp.Id
140+
Set-AzKeyVaultAccessPolicy -VaultName $vaultName -ObjectId $objectId -PermissionsToSecrets get, set, list
141+
142+
$secretValue = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
143+
Set-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -SecretValue $secretValue
144+
145+
$exp = (Get-Date).AddYears(1).ToUniversalTime()
146+
$nbf = (Get-Date).ToUniversalTime()
147+
$ctp= "text"
148+
$tags = @{ "Severity" = "low" }
149+
Update-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -NotBefore $nbf -Expires $exp -ContentType $ctp -Tag $tags -Enable $true
150+
151+
$actual = Get-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -ErrorAction SilentlyContinue
152+
Assert-NotNull $actual
153+
Assert-AreEqual $true $actual.Enabled
154+
Assert-AreEqual $ctp $actual.ContentType
155+
}
156+
157+
Invoke-LiveTestScenario -Name "Remove key vault secret" -Description "Test removing a key vault secret" -ScenarioScript `
158+
{
159+
param ($rg)
160+
161+
$rgName = $rg.ResourceGroupName
162+
$vaultName = New-LiveTestResourceName
163+
$vaultLocation = "eastus"
164+
$secretName = New-LiveTestResourceName
165+
166+
New-AzKeyVault -VaultName $vaultName -ResourceGroupName $rgName -Location $vaultLocation
167+
$sp = Get-AzADServicePrincipal -ApplicationId (Get-AzContext).Account.Id
168+
$objectId = $sp.Id
169+
Set-AzKeyVaultAccessPolicy -VaultName $vaultName -ObjectId $objectId -PermissionsToSecrets get, set, list, delete
170+
171+
$secretValue = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
172+
Set-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -SecretValue $secretValue
173+
174+
Remove-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -Force
175+
176+
$actual = Get-AzKeyVaultSecret -VaultName $vaultName -Name $secretName -ErrorAction SilentlyContinue
177+
Assert-Null $actual
178+
}
179+
180+
Invoke-LiveTestScenario -Name "Backup and restore key vault secret" -Description "Test backing up and restoring a key vault secret" -ScenarioScript `
181+
{
182+
param ($rg)
183+
184+
$rgName = $rg.ResourceGroupName
185+
$vaultName1 = New-LiveTestResourceName
186+
$vaultName2 = New-LiveTestResourceName
187+
$vaultLocation = "eastus"
188+
$secretName = New-LiveTestResourceName
189+
190+
New-AzKeyVault -VaultName $vaultName1 -ResourceGroupName $rgName -Location $vaultLocation
191+
New-AzKeyVault -VaultName $vaultName2 -ResourceGroupName $rgName -Location $vaultLocation
192+
$sp = Get-AzADServicePrincipal -ApplicationId (Get-AzContext).Account.Id
193+
$objectId = $sp.Id
194+
Set-AzKeyVaultAccessPolicy -VaultName $vaultName1 -ObjectId $objectId -PermissionsToSecrets get, set, list, backup
195+
Set-AzKeyVaultAccessPolicy -VaultName $vaultName2 -ObjectId $objectId -PermissionsToSecrets get, set, list, restore
196+
197+
$secretValue = ConvertTo-SecureString -String 'Password' -AsPlainText -Force
198+
Set-AzKeyVaultSecret -VaultName $vaultName1 -Name $secretName -SecretValue $secretValue
199+
200+
Backup-AzKeyVaultSecret -VaultName $vaultName1 -Name $secretName -OutputFile "SecretBackup.blob" -Force
201+
202+
Restore-AzKeyVaultSecret -VaultName $vaultName2 -InputFile "SecretBackup.blob"
203+
204+
$actual = Get-AzKeyVaultSecret -VaultName $vaultName2 -Name $secretName -ErrorAction SilentlyContinue
205+
Assert-NotNull $actual
206+
Assert-AreEqual $vaultName2 $actual.VaultName
207+
Assert-AreEqual $secretName $actual.Name
208+
}

0 commit comments

Comments
 (0)