@@ -306,7 +306,43 @@ function Test-Blob
306
306
Assert-AreEqual $true $container.BlobContainerProperties.PreventEncryptionScopeOverride
307
307
$blob = Set-AzStorageBlobContent - Context $storageContext - File $localSrcFile - Container $containerName - Blob encryscopetest - EncryptionScope $scopename
308
308
Assert-AreEqual $scopename $blob.BlobProperties.EncryptionScope
309
- Remove-AzStorageContainer - Name $containerName2 - Force - Context $storageContext
309
+ Remove-AzStorageContainer - Name $containerName2 - Force - Context $storageContext
310
+
311
+ # container softdelete test
312
+ # # Enabled container softdelete,then create and delete a container
313
+ Enable-AzStorageContainerDeleteRetentionPolicy - ResourceGroupName $ResourceGroupName - Name $StorageAccountName - RetentionDays 3
314
+ $containerNamesoftdelete = " softdeletecontainer"
315
+ $newcontainerName = " newcontainer"
316
+ New-AzStorageContainer - Name $containerNamesoftdelete - Context $storageContext
317
+ Remove-AzStorageContainer - Name $containerNamesoftdelete - Context $storageContext - Force
318
+ # # Get container without -IncludeDeleted, won't list out deleted containers
319
+ $deletedcontainer = Get-AzStorageContainer - Context $storageContext | ? {$_.IsDeleted }
320
+ Assert-AreEqual 0 $deletedcontainer.Count
321
+ # # Get container with -IncludeDeleted, will list out deleted containers
322
+ $deletedcontainer = Get-AzStorageContainer - Context $storageContext - IncludeDeleted | ? {$_.IsDeleted }
323
+ Assert-AreEqual 1 $deletedcontainer.Count
324
+ Assert-AreEqual $true $deletedcontainer.IsDeleted
325
+ Assert-NotNull $deletedcontainer.VersionId
326
+ # # restore container with pipeline, to same container name
327
+ sleep 60 # need wait for some time, or restore will fail with 409 (The specified container is being deleted.)
328
+ $deletedcontainer | Restore-AzStorageContainer
329
+ $container = Get-AzStorageContainer - Name $containerNamesoftdelete - Context $storageContext
330
+ Assert-AreEqual 1 $container.Count
331
+ Assert-Null $container.IsDeleted
332
+ Assert-Null $container.VersionId
333
+ # # restore container with parameter, to a new container name
334
+ Remove-AzStorageContainer - Name $containerNamesoftdelete - Context $storageContext - Force
335
+ $deletedcontainer = Get-AzStorageContainer - Context $storageContext - IncludeDeleted | ? {$_.IsDeleted }
336
+ Assert-AreEqual 1 $deletedcontainer.Count
337
+ sleep 60 # need wait for some time, or restore will fail with 409 (The specified container is being deleted.)
338
+ Restore-AzStorageContainer - Name $deletedcontainer [0 ].Name - VersionId $deletedcontainer [0 ].VersionId - DestinationContainerName $newcontainerName - Context $storageContext
339
+ $container = Get-AzStorageContainer - Name $newcontainerName - Context $storageContext
340
+ Assert-AreEqual 1 $container.Count
341
+ Assert-AreEqual $newcontainerName $container.Name
342
+ Assert-Null $container.IsDeleted
343
+ Assert-Null $container.VersionId
344
+ Disable-AzStorageContainerDeleteRetentionPolicy - ResourceGroupName $ResourceGroupName - Name $StorageAccountName
345
+ Remove-AzStorageContainer - Name $newcontainerName - Context $storageContext - Force
310
346
311
347
# Clean Storage Account
312
348
Remove-AzStorageContainer - Name $containerName - Force - Context $storageContext
0 commit comments