Skip to content

Commit 4cbfa3a

Browse files
authored
Merge pull request Azure#24 from blueww/regressiontests
Some test fix
2 parents 769551c + 6c740b6 commit 4cbfa3a

File tree

5 files changed

+69
-37
lines changed

5 files changed

+69
-37
lines changed

src/Storage/RegressionTests/adls.ps1

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
BeforeAll {
55
# Modify the path to your own
6-
Import-Module D:\code\azure-powershell\src\Storage\RegressionTests\utils.ps1
6+
Import-Module $PSScriptRoot\utils.ps1
77

88
[xml]$config = Get-Content D:\code\azure-powershell\src\Storage\RegressionTests\config.xml
99
$globalNode = $config.SelectSingleNode("config/section[@id='global']")

src/Storage/RegressionTests/adls_setaclresusive.ps1

Lines changed: 38 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -4,15 +4,36 @@ function ResetFileToFail
44
{
55
# Reset the file to make it failure in set acl resusive
66
# New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path dir0/dir1/file1 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
7-
New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path dir0/dir2/file4 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
8-
$blob = Get-AzStorageBlob -Container $filesystemName -blob dir0/dir2/file4 -Context $ctx
9-
$leaseID = $blob.ICloudBlob.AcquireLease($null, $null);
7+
$blob = Get-AzStorageBlob -Container $filesystemName -blob dir0/dir2/file4 -Context $ctx
8+
if ($blob.BlobProperties.LeaseStatus -eq "Unlocked")
9+
{
10+
New-AzDataLakeGen2Item -Context $ctx -FileSystem $filesystemName -Path dir0/dir2/file4 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
11+
$blob = Get-AzStorageBlob -Container $filesystemName -blob dir0/dir2/file4 -Context $ctx
12+
$leaseID = $blob.ICloudBlob.AcquireLease($timespan, $leaseID)
13+
}
14+
}
15+
16+
function ResetFileToSuccess
17+
{
18+
# Reset the file to make it success in set acl resusive
19+
$blob = Get-AzStorageBlob -Container $filesystemName -blob dir0/dir2/file4 -Context $ctx
20+
21+
if (($blob.BlobProperties.LeaseStatus -eq "Locked"))# -and ($blob.BlobProperties.LeaseDuration -eq "Fixed"))
22+
{
23+
$ac = New-Object -TypeName "Microsoft.Azure.Storage.AccessCondition"
24+
$ac.LeaseId = $leaseID
25+
$blob.ICloudBlob.ReleaseLease($ac)
26+
27+
# sleep 1
28+
# $blob = Get-AzStorageBlob -Container $filesystemName -blob dir0/dir2/file4 -Context $ctx
29+
}
30+
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir2/file4 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x--- | Out-Null
1031
}
1132

1233

1334
BeforeAll {
1435
# Modify the path to your own
15-
Import-Module D:\code\azure-powershell\src\Storage\RegressionTests\utils.ps1
36+
Import-Module $PSScriptRoot\utils.ps1
1637

1738
[xml]$config = Get-Content D:\code\azure-powershell\src\Storage\RegressionTests\config.xml
1839
$globalNode = $config.SelectSingleNode("config/section[@id='global']")
@@ -31,6 +52,9 @@ BeforeAll {
3152
$filesystemName = "adlstest2"
3253
$localSrcFile = "C:\temp\testfile_1K_0" #The file needs to exist before tests, and should be 512 bytes aligned
3354
$id = $globalNode.applicationId
55+
56+
# for lease blob to make set acl recusive fail
57+
$timespan = New-Object -TypeName System.TimeSpan -ArgumentList 150000000
3458
$leaseID = $testNode.leaseId
3559

3660

@@ -187,6 +211,8 @@ Describe "Set DataLakeGen2 Acl Recursive" {
187211
$TotalFilesSuccess = 0
188212
$totalFailure = 0
189213
$FailedEntries = New-Object System.Collections.Generic.List[System.Object]
214+
215+
ResetFileToFail
190216
do
191217
{
192218
if ($ContinueOnFailure)
@@ -224,6 +250,8 @@ Describe "Set DataLakeGen2 Acl Recursive" {
224250
$token | should -BeNullOrEmpty
225251
$FailedEntries.Count | should -Be 1
226252

253+
ResetFileToSuccess
254+
227255
$Error.Count | should -be 0
228256
}
229257

@@ -239,7 +267,7 @@ Describe "Set DataLakeGen2 Acl Recursive" {
239267
$result.FailedEntries.Count | Should -Be 1
240268
# Resume: fix the permission issue and continue set ACL recusive
241269
# New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir1/file1 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
242-
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir2/file4 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x--- | Out-Null
270+
ResetFileToSuccess
243271
$result = Set-AzDataLakeGen2AclRecursive -Context $ctx2 -FileSystem $filesystemName -Path dir0 -Acl $acl1 -BatchSize 3 -ContinuationToken $result.ContinuationToken
244272
($result.ContinuationToken -eq $null) | should -Be $true
245273
$result.TotalFailureCount | should -Be 0
@@ -258,8 +286,7 @@ Describe "Set DataLakeGen2 Acl Recursive" {
258286
$result.TotalFailureCount | should -Be 1
259287
$result.FailedEntries.Count | Should -Be 1
260288
# Resume: fix the permission issue and continue set ACL recusive
261-
# New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir1/file1 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
262-
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir2/file4 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
289+
ResetFileToSuccess
263290
$result = Update-AzDataLakeGen2AclRecursive -Context $ctx2 -FileSystem $filesystemName -Path dir0 -Acl $acl2 -BatchSize 3 -ContinuationToken $result.ContinuationToken
264291
($result.ContinuationToken -eq $null) | should -Be $true
265292
$result.TotalFailureCount | should -Be 0
@@ -278,8 +305,7 @@ Describe "Set DataLakeGen2 Acl Recursive" {
278305
$result.TotalFailureCount | should -Be 1
279306
$result.FailedEntries.Count | Should -Be 1
280307
# Resume: fix the permission issue and continue set ACL recusive
281-
# New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir1/file1 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
282-
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path dir0/dir2/file4 -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
308+
ResetFileToSuccess
283309
$result = Remove-AzDataLakeGen2AclRecursive -Context $ctx2 -FileSystem $filesystemName -Path dir0 -Acl $acl2 -BatchSize 20 -ContinuationToken $result.ContinuationToken
284310
($result.ContinuationToken -eq $null) | should -Be $true
285311
$result.TotalFailureCount | should -Be 0
@@ -302,7 +328,7 @@ Describe "Set DataLakeGen2 Acl Recursive" {
302328
foreach ($path in $result.FailedEntries.Name)
303329
{
304330
# fix failed entry
305-
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path $path -Source $localSrcFile -Force # | Update-AzDataLakeGen2Item -Permission rwxr-x---
331+
ResetFileToSuccess
306332
#setACL again
307333
$result = Set-AzDataLakeGen2AclRecursive -Context $ctx2 -FileSystem $filesystemName -Path $path -Acl $acl1
308334
$result.ContinuationToken | should -BeNullOrEmpty
@@ -333,7 +359,7 @@ Describe "Set DataLakeGen2 Acl Recursive" {
333359
foreach ($path in $result.FailedEntries.Name)
334360
{
335361
# fix failed entry
336-
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path $path -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
362+
ResetFileToSuccess
337363
#setACL again
338364
$result = Update-AzDataLakeGen2AclRecursive -Context $ctx2 -FileSystem $filesystemName -Path $path -Acl $acl2
339365
$result.ContinuationToken | should -BeNullOrEmpty
@@ -364,7 +390,7 @@ Describe "Set DataLakeGen2 Acl Recursive" {
364390
foreach ($path in $result.FailedEntries.Name)
365391
{
366392
# fix failed entry
367-
New-AzDataLakeGen2Item -Context $ctx2 -FileSystem $filesystemName -Path $path -Source $localSrcFile -Force | Update-AzDataLakeGen2Item -Permission rwxr-x---
393+
ResetFileToSuccess
368394
#setACL again
369395
$result = Remove-AzDataLakeGen2AclRecursive -Context $ctx2 -FileSystem $filesystemName -Path $path -Acl $acl2
370396
$result.ContinuationToken | should -BeNullOrEmpty

src/Storage/RegressionTests/dataplane.ps1

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
BeforeAll {
44
# Modify the path to your own
5-
Import-Module D:\code\azure-powershell\src\Storage\RegressionTests\utils.ps1
5+
Import-Module $PSScriptRoot\utils.ps1
66

77
[xml]$config = Get-Content D:\code\azure-powershell\src\Storage\RegressionTests\config.xml
88
$globalNode = $config.SelectSingleNode("config/section[@id='global']")
@@ -181,9 +181,13 @@ Describe "dataplane test" {
181181
$sas = New-AzStorageBlobSASToken -container $containerName -Blob test.txt -Permission w -Context $ctx
182182
$ctxsas = New-AzStorageContext -StorageAccountName $ctx.StorageAccountName -SasToken $sas.Substring(1)
183183
$bs = Get-AzStorageBlob -Container $containerName -Context $ctx
184+
$bs[0].ListBlobProperties | should -Not -Be $null
185+
$bs[0].ListBlobProperties.Properties | should -Not -Be $null
186+
$bs[0].ListBlobProperties.Properties.BlobType | should -Not -Be $null
184187
$bs[0].BlobProperties | should -Not -Be $null
185188
$b = Get-AzStorageBlob -Container $containerName -Blob $bs[0].Name -Context $ctx
186189
$b.BlobProperties | should -Not -Be $null
190+
$b.ListBlobProperties | should -Be $null
187191

188192
#copy with oauth
189193
# cross account

src/Storage/RegressionTests/runStable.ps1

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
11

22

3-
Import-Module d:\code\PSH_Dev\artifacts\Debug\Az.Accounts\Az.Accounts.psd1
4-
Import-Module d:\code\PSH_Dev\artifacts\Debug\Az.Storage\Az.Storage.psd1
3+
#Import-Module d:\code\PSH_Dev\artifacts\Debug\Az.Accounts\Az.Accounts.psd1
4+
#Import-Module d:\code\PSH_Dev\artifacts\Debug\Az.Storage\Az.Storage.psd1
55

66

7-
Import-Module C:\Users\weiwei\Desktop\PSH_Script\PSHTest\utils.ps1
8-
Import-Module C:\Users\weiwei\Desktop\PSH_Script\Assert.ps1
7+
Import-Module $PSScriptRoot\utils.ps1
8+
# Import-Module $PSScriptRoot\Assert.ps1
99

1010

1111
# $preview = $true
1212

13-
Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\dataplane.ps1 -Show All -Strict # -TagFilter ToTest # -TagFilter blobversion,qq
14-
Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\adls.ps1 -Show All -Strict
15-
Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\adls_setaclresusive.ps1 -Show All -Strict
16-
Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\srp.ps1 -Show All -Strict -ExcludeTagFilter "longrunning" # -TagFilter "fail"
13+
Invoke-Pester $PSScriptRoott\dataplane.ps1 -Show All -Strict # -TagFilter ToTest # -TagFilter blobversion,qq
14+
Invoke-Pester $PSScriptRoot\adls.ps1 -Show All -Strict
15+
Invoke-Pester $PSScriptRoot\adls_setaclresusive.ps1 -Show All -Strict
16+
Invoke-Pester $PSScriptRoot\srp.ps1 -Show All -Strict -ExcludeTagFilter "longrunning" # -TagFilter "fail"
1717

18-
Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\srp.ps1 -Show All -Strict -TagFilter "longrunning"
18+
Invoke-Pester $PSScriptRoot\srp.ps1 -Show All -Strict -TagFilter "longrunning"
1919

2020

2121
#Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\dataplane.ps1 -Show All -Strict -TagFilter accesspolicy

src/Storage/RegressionTests/srp.ps1

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
# Invoke-Pester C:\Users\weiwei\Desktop\PSH_Script\PSHTest\dataplane.ps1 -Show All -Strict -ExcludeTagFilter "Preview"
22

33
BeforeAll {
4-
Import-Module D:\code\azure-powershell\artifacts\Debug\Az.Accounts\Az.Accounts.psd1
5-
Import-Module D:\code\azure-powershell\artifacts\Debug\Az.Storage\Az.Storage.psd1
4+
# Import-Module D:\code\azure-powershell\artifacts\Debug\Az.Accounts\Az.Accounts.psd1
5+
# Import-Module D:\code\azure-powershell\artifacts\Debug\Az.Storage\Az.Storage.psd1
66

77
# Modify the path to your own
8-
Import-Module D:\code\azure-powershell\src\Storage\RegressionTests\utils.ps1
8+
Import-Module $PSScriptRoot\utils.ps1
99

1010
[xml]$config = Get-Content D:\code\azure-powershell\src\Storage\RegressionTests\config.xml
1111
$globalNode = $config.SelectSingleNode("config/section[@id='global']")
@@ -41,29 +41,31 @@ Describe "Management plan test" {
4141

4242
$accountNameBasic = $accountName + "basic"
4343

44-
$account = New-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic -SkuName Standard_GRS -Location "eastus2euap" -Kind StorageV2 -EnableHierarchicalNamespace $true -EnableHttpsTrafficOnly $true -AllowCrossTenantReplication $false -PublicNetworkAccess Disabled # -AllowedCopyScope AAD
44+
$account = New-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic -SkuName Standard_GRS -Location "westus" -Kind StorageV2 -EnableHierarchicalNamespace $true -EnableHttpsTrafficOnly $true -AllowCrossTenantReplication $false -PublicNetworkAccess Disabled -AllowedCopyScope AAD
4545
$account.ResourceGroupName | should -Be $rgname
4646
$account.StorageAccountName | should -Be $accountNameBasic
4747
$account.Sku.Name | should -Be "Standard_GRS"
48-
$account.Location | should -Be "eastus2euap"
48+
$account.Location | should -Be "westus"
4949
$account.EnableHierarchicalNamespace | should -Be $true
5050
$account.EnableHttpsTrafficOnly | should -Be $true
5151
$account.Kind | should -Be "StorageV2"
5252
$account.AllowCrossTenantReplication | should -Be $false
5353
$account.PublicNetworkAccess | should -Be Disabled
54-
# $account.AllowedCopyScope | should -Be AAD
54+
$account.AllowedCopyScope | should -Be AAD
5555

5656
$result = Get-AzStorageAccountNameAvailability -Name $accountNameBasic
5757
$result.NameAvailable | should -Be $false
5858

5959
$account = Get-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic | Set-AzStorageAccount -EnableHttpsTrafficOnly $false -AccessTier cool -Force
6060
$account.EnableHttpsTrafficOnly | should -Be $false
6161
$account.AccessTier | should -Be "Cool"
62-
$account = Get-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic | Set-AzStorageAccount -UpgradeToStorageV2 -PublicNetworkAccess Enabled
62+
$account = Get-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic | Set-AzStorageAccount -UpgradeToStorageV2 -PublicNetworkAccess Enabled -AllowedCopyScope PrivateLink
6363
$account.Kind | should -Be "StorageV2"
64+
$account.AllowedCopyScope | should -Be PrivateLink
6465
$account = Get-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic -IncludeGeoReplicationStats
6566
($account.GeoReplicationStats -eq $null) | should -Be $false
6667
$account.PublicNetworkAccess | should -Be Enabled
68+
$account.AllowedCopyScope | should -Be PrivateLink
6769

6870
Remove-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameBasic -Force -AsJob
6971

@@ -674,7 +676,7 @@ Describe "Management plan test" {
674676

675677
$accountNameEncryp = $accountName + "ska"
676678

677-
$account = New-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameEncryp -SkuName Standard_LRS -Location 'East US 2 EUAP' -Kind StorageV2 -EncryptionKeyTypeForTable Account -EncryptionKeyTypeForQueue Account -AllowSharedKeyAccess $false
679+
$account = New-AzStorageAccount -ResourceGroupName $rgname -StorageAccountName $accountNameEncryp -SkuName Standard_LRS -Location 'westus' -Kind StorageV2 -EncryptionKeyTypeForTable Account -EncryptionKeyTypeForQueue Account -AllowSharedKeyAccess $false
678680
$account.Encryption.Services.Queue.Keytype | should -be "account"
679681
$account.Encryption.Services.Table.Keytype | should -be "account"
680682
$account.AllowSharedKeyAccess | Should -be $false
@@ -1148,7 +1150,7 @@ Describe "Management plan test" {
11481150

11491151
$rgname = $globalNode.resourceGroupName
11501152
$accountNamePITR = $accountName + "pitr"
1151-
New-AzStorageAccount -ResourceGroupName $rgname -Name $accountNamePITR -SkuName Standard_LRS -Location eastus2euap
1153+
New-AzStorageAccount -ResourceGroupName $rgname -Name $accountNamePITR -SkuName Standard_LRS -Location westus
11521154
Enable-AzStorageBlobDeleteRetentionPolicy -ResourceGroupName $rgname -StorageAccountName $accountNamePITR -RetentionDays 5
11531155
Update-AzStorageBlobServiceProperty -ResourceGroupName $rgname -StorageAccountName $accountNamePITR -EnableChangeFeed $true -IsVersioningEnabled $true
11541156
Enable-AzStorageBlobRestorePolicy -ResourceGroupName $rgname -StorageAccountName $accountNamePITR -RestoreDays 4 -PassThru
@@ -2147,11 +2149,11 @@ Describe "Management plan test" {
21472149

21482150
$vnet1 = $testNode.nfsv3.vnet
21492151
# Commands to create a vnet
2150-
# New-AzVirtualNetwork -ResourceGroupName $rgname -Location "eastus2euap" -AddressPrefix 10.0.0.0/24 -Name "vnet1"
2152+
# New-AzVirtualNetwork -ResourceGroupName $rgname -Location "westus" -AddressPrefix 10.0.0.0/24 -Name "vnet1"
21512153
# $n = Get-AzVirtualNetwork -ResourceGroupName $rgname -Name "vnet1" | Add-AzVirtualNetworkSubnetConfig -Name "subnet1" -AddressPrefix "10.0.0.0/28" -ServiceEndpoint "Microsoft.Storage" | Set-AzVirtualNetwork
21522154

21532155
$accountNameNfsv3 = $accountName + "nfsv3"
2154-
$a = New-AzStorageAccount -ResourceGroupName $rgname -Name $accountNameNfsv3 -SkuName Standard_LRS -Location centraluseuap -Kind StorageV2 -EnableNfsV3 $true -EnableHierarchicalNamespace $true -EnableHttpsTrafficOnly $false `
2156+
$a = New-AzStorageAccount -ResourceGroupName $rgname -Name $accountNameNfsv3 -SkuName Standard_LRS -Location westus -Kind StorageV2 -EnableNfsV3 $true -EnableHierarchicalNamespace $true -EnableHttpsTrafficOnly $false `
21552157
-NetworkRuleSet (@{bypass="Logging,Metrics";virtualNetworkRules=(@{VirtualNetworkResourceId="$vnet1";Action="allow"});defaultAction="deny"})
21562158
$a.EnableNfsV3 | should -BeTrue
21572159

@@ -2333,7 +2335,7 @@ Describe "Management plan test" {
23332335
$Error.Clear()
23342336

23352337
# Create account
2336-
$a = New-AzStorageAccount -ResourceGroupName $rgname -Name $accountNameHns -SkuName Standard_LRS -Location centraluseuap -Kind StorageV2 # -EnableHierarchicalNamespace $true
2338+
$a = New-AzStorageAccount -ResourceGroupName $rgname -Name $accountNameHns -SkuName Standard_LRS -Location westus -Kind StorageV2 # -EnableHierarchicalNamespace $true
23372339
$a.EnableHierarchicalNamespace | should -be $null
23382340

23392341
# Validation
@@ -2344,7 +2346,7 @@ Describe "Management plan test" {
23442346

23452347
# stop upgrade (will fail)
23462348
Stop-AzStorageAccountHierarchicalNamespaceUpgrade -ResourceGroupName $rgname -Name $accountNameHns -Force -PassThru -ErrorAction SilentlyContinue
2347-
$error[0].Exception.Message | should -Be "Hns migration for the account: $($accountName) is not found."
2349+
$error[0].Exception.Message | should -Be "Hns migration for the account: $($accountNameHns) is not found."
23482350
$error.Count | should -be 1
23492351
$error.Clear()
23502352

@@ -2407,7 +2409,7 @@ Describe "Management plan test" {
24072409
$Error.Clear()
24082410
$accountNameVLW = $testNode.SelectSingleNode("accountName[@id='1']").'#text' ## e.g. “testaccount”
24092411

2410-
$ctx = (Get-AzStorageAccount -ResourceGroupName $rgname -Name $accountName).Context
2412+
$ctx = (Get-AzStorageAccount -ResourceGroupName $rgname -Name $accountNameVLW).Context
24112413
$containerNameVLW = "vlwtest"
24122414
$containerNameVLW2 = "vlwtestmigration2"
24132415
$localSrcFile = "C:\temp\testfile_10240K_0"

0 commit comments

Comments
 (0)