@@ -1983,42 +1983,82 @@ Describe "dataplane test" {
1983
1983
1984
1984
It " Queue track2 migration" {
1985
1985
$Error.Clear ()
1986
-
1987
- New-AzStorageQueue - Name testq1 - Context $ctx
1988
-
1989
- $sas = New-AzStorageQueueSASToken - Name testq1 - Context $ctx - Permission ruap
1986
+ $queuename = " testq1"
1987
+
1988
+ $q = New-AzStorageQueue - Name $queuename - Context $ctx
1989
+ $q.Name | Should - Be $queuename
1990
+ $q = Get-AzStorageQueue - Name $queuename - Context $ctx
1991
+ $q.Name | Should - Be $queuename
1992
+ $q.ApproximateMessageCount | Should - Be 0
1993
+ $q.QueueProperties.ApproximateMessagesCount | Should - Be 0
1994
+
1995
+ $q = New-AzStorageQueue - Name testq2 - Context $ctx
1996
+ $qs = Get-AzStorageQueue - Context $ctx
1997
+ $qs.Count | Should - BeGreaterOrEqual 2
1998
+
1999
+ $q = Get-AzStorageQueue - Name $queuename - Context $ctx
2000
+ $queueMessage = New-Object - TypeName " Microsoft.Azure.Storage.Queue.CloudQueueMessage,$ ( $q.CloudQueue.GetType ().Assembly.FullName) " - ArgumentList " This is message 1"
2001
+ $q.CloudQueue.AddMessageAsync ($QueueMessage )
2002
+ $q = Get-AzStorageQueue - Name $queuename - Context $ctxoauth1
2003
+ $q.Name | Should - Be $queuename
2004
+ $q.ApproximateMessageCount | Should - Be 1
2005
+ $q.QueueProperties.ApproximateMessagesCount | Should - Be 1
2006
+ $q.CloudQueue.ApproximateMessageCount | Should - Be 1
2007
+
2008
+ $sas = New-AzStorageAccountSASToken - Service Queue - ResourceType Container, Object, Service - Permission rwdl - ExpiryTime 3000 - 01 - 01 - Context $ctx
2009
+ $ctxaccountsas = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
2010
+ $qs = Get-AzStorageQueue - Context $ctxaccountsas
2011
+ $qs.Count | Should - BeGreaterOrEqual 2
2012
+
2013
+ $sas = New-AzStorageQueueSASToken - Name $queuename - Context $ctx - Permission ruap
1990
2014
$sas | Should - BeLike " *sp=raup*"
1991
2015
$sasctx = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
1992
- $q = Get-AzStorageQueue - Name testq1 - Context $sasctx
1993
- $q.Name | Should - Be " testq1 "
2016
+ $q = Get-AzStorageQueue - Name $queuename - Context $sasctx
2017
+ $q.Name | Should - Be $queuename
1994
2018
$q.Context.StorageAccount.Credentials.IsSAS | Should - Be $true
1995
2019
1996
- $sas = New-AzStorageQueueSASToken - Name testq1 - Context $ctx - Permission rap - StartTime 2023 - 04 - 20 - ExpiryTime 2223 - 08 - 05
2020
+ $sas = New-AzStorageQueueSASToken - Name $queuename - Context $ctx - Permission rap - StartTime 2023 - 04 - 20 - ExpiryTime 2223 - 08 - 05
1997
2021
$sasctx = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
1998
2022
$sas | Should - BeLike " *st=2023-04-19*se=2223-08-04*"
1999
- $q = Get-AzStorageQueue - Name testq1 - Context $sasctx
2000
- $q.Name | Should - Be " testq1 "
2023
+ $q = Get-AzStorageQueue - Name $queuename - Context $sasctx
2024
+ $q.Name | Should - Be $queuename
2001
2025
$q.Context.StorageAccount.Credentials.IsSAS | Should - Be $true
2002
2026
2003
- $sas = New-AzStorageQueueSASToken - Name testq1 - Context $ctx - Permission raup - Protocol HttpsOnly - IPAddressOrRange 0.0 .0.0 - 255.255 .255.255 - ExpiryTime 2223 - 08 - 05
2027
+ $sas = New-AzStorageQueueSASToken - Name $queuename - Context $ctx - Permission raup - Protocol HttpsOnly - IPAddressOrRange 0.0 .0.0 - 255.255 .255.255 - ExpiryTime 2223 - 08 - 05
2004
2028
$sas | Should - BeLike " *spr=https*se=2223-08-04*sip=0.0.0.0-255.255.255.255*sp=raup*"
2005
2029
$sasctx = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
2006
- $q = Get-AzStorageQueue - Name testq1 - Context $sasctx
2007
- $q.Name | Should - Be " testq1 "
2030
+ $q = Get-AzStorageQueue - Name $queuename - Context $sasctx
2031
+ $q.Name | Should - Be $queuename
2008
2032
$q.Context.StorageAccount.Credentials.IsSAS | Should - Be $true
2009
2033
2010
- $sas = New-AzStorageQueueSASToken - Name testq1 - Context $ctx - Permission raup - ExpiryTime 2223 - 08 - 05 - FullUri
2034
+ $sas = New-AzStorageQueueSASToken - Name $queuename - Context $ctx - Permission raup - ExpiryTime 2223 - 08 - 05 - FullUri
2011
2035
$sas | Should - BeLike " https://$ ( $storageAccountName ) .queue.core.windows.net/testq1*se=2223-08-04*"
2012
2036
2013
- New-AzStorageQueueStoredAccessPolicy - Queue testq1 - Policy p001 - Permission ruap - StartTime 2023 - 5 - 1 - ExpiryTime 2223 - 08 - 05 - Context $ctx
2014
- $sas = New-AzStorageQueueSASToken - Name testq1 - Policy p001 - Context $ctx - Protocol HttpsOnly - IPAddressOrRange 0.0 .0.0 - 255.255 .255.255
2037
+ New-AzStorageQueueStoredAccessPolicy - Queue $queuename - Policy p001 - Permission ruap - StartTime 2023 - 5 - 1 - ExpiryTime 2223 - 08 - 05 - Context $ctx
2038
+ $sas = New-AzStorageQueueSASToken - Name $queuename - Policy p001 - Context $ctx - Protocol HttpsOnly - IPAddressOrRange 0.0 .0.0 - 255.255 .255.255
2015
2039
$sas | Should - BeLike " *spr=https*sip=0.0.0.0-255.255.255.255*si=p001*"
2016
2040
$sasctx = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
2017
- $q = Get-AzStorageQueue - Name testq1 - Context $sasctx
2018
- $q.Name | Should - Be " testq1 "
2041
+ $q = Get-AzStorageQueue - Name $queuename - Context $sasctx
2042
+ $q.Name | Should - Be $queuename
2019
2043
$q.Context.StorageAccount.Credentials.IsSAS | Should - Be $true
2020
2044
2021
- Remove-AzStorageQueue - Name testq1 - Context $ctx - Force
2045
+ $p = Set-AzStorageQueueStoredAccessPolicy - Queue $queuename - Policy p001 - Permission rau - NoStartTime - NoExpiryTime - Context $ctx
2046
+ $p.Policy | Should - Be " p001"
2047
+ $p.ExpiryTime | Should - Be $null
2048
+ $p.StartTime | Should - Be $null
2049
+ $p.Permissions | Should - Be " rau"
2050
+
2051
+ $p = New-AzStorageQueueStoredAccessPolicy - Queue $queuename - Policy p002 - Permission ruap - Context $ctx
2052
+ $p = Get-AzStorageQueueStoredAccessPolicy - Queue $queuename - Context $ctx
2053
+ $p.Count | Should - Be 2
2054
+ $p = Get-AzStorageQueueStoredAccessPolicy - Queue $queuename - Policy p001 - Context $ctx
2055
+ $p.Policy | Should - Be " p001"
2056
+
2057
+ Remove-AzStorageQueueStoredAccessPolicy - Queue $queuename - Policy p001 - Context $ctx
2058
+
2059
+ Remove-AzStorageQueue - Name $queuename - Context $ctx - Force
2060
+ $q2 = Get-AzStorageQueue - Name testq2 - Context $ctxoauth1
2061
+ $q2 | Remove-AzStorageQueue - Force
2022
2062
2023
2063
$Error.Count | should - be 0
2024
2064
}
@@ -2372,9 +2412,152 @@ Describe "dataplane test" {
2372
2412
$Error.Count | should - be 0
2373
2413
}
2374
2414
2375
- It " Test case name " {
2415
+ It " Trailing dot " {
2376
2416
$Error.Clear ()
2377
2417
2418
+ $sharename = " testshare1"
2419
+ $share = New-AzStorageShare - Name $sharename - Context $ctx
2420
+
2421
+ # Default: allow
2422
+ $f = Get-AzStorageFile - ShareName $sharename - Context $ctx
2423
+ $d = New-AzStorageDirectory - ShareName $shareName - Path " test1." - Context $ctx
2424
+ $d.Name | Should - Be " test1."
2425
+ $d = New-AzStorageDirectory - ShareName $shareName - Path " test1./test2.." - Context $ctx
2426
+ $d.Name | Should - Be " test2.."
2427
+ $d = New-AzStorageDirectory - ShareName $shareName - Path " dir1" - Context $ctx
2428
+ $d.Name | Should - Be " dir1"
2429
+
2430
+ $dir = Get-AzStorageFile - ShareName $shareName - Path " test1./test2.." - Context $ctx
2431
+ $dir.Name | Should - Be " test2.."
2432
+ $dir.ShareDirectoryClient.Path | Should - Be " test1./test2.."
2433
+ $dir.ShareDirectoryClient.Name | Should - Be " test2.."
2434
+
2435
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " testfile" - Source .\data \testfile_1K_0 - Context $ctx - PassThru - Force
2436
+ $f.Name | Should - Be " testfile"
2437
+ $f.Length | Should - Be 1024
2438
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test1./test2../files..." - Source .\data \testfile_1024K_0 - Context $ctx - PassThru - Force
2439
+ $f.Name | Should - Be " files..."
2440
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2441
+ $f.ShareFileClient.ShareName | Should - Be $shareName
2442
+
2443
+ if ($false ){
2444
+ # should fail
2445
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test1/test2/files..." - Source C:\temp\512b - Context $ctx - PassThru
2446
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test1/test2../files" - Source C:\temp\512b - Context $ctx - PassThru
2447
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test1./test2/files" - Source C:\temp\512b - Context $ctx - PassThru
2448
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test1/test2/files" - Source C:\temp\512b - Context $ctx - PassThru
2449
+ }
2450
+
2451
+ # $f.CloudFile.FetchAttributes() # should fail
2452
+ $f = $dir | Set-AzStorageFileContent - Path " files..." - Source .\data \testfile_1024K_0 - PassThru - Force
2453
+ $f.Name | Should - Be " files..."
2454
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2455
+ $f.ShareFileClient.Name | Should - Be " files..."
2456
+
2457
+ $f = $share | Set-AzStorageFileContent - Path " test1./test2../files..." - Source .\data \testfile_1024K_0 - PassThru - Force
2458
+ $f.Name | Should - Be " files..."
2459
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2460
+ $f.ShareFileClient.Name | Should - Be " files..."
2461
+ $f.Length | Should - Be 1024
2462
+
2463
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test1./test2../files.1.." - Source .\data \testfile_10240K_0 - Context $ctx - PassThru - Force
2464
+ $f.Name | Should - Be " files.1.."
2465
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files.1.."
2466
+ $f.Length | Should - Be 10240
2467
+ $f.ShareFileClient.Name | Should - Be " files.1.."
2468
+
2469
+ # download file/dir
2470
+ $f = Get-AzStorageFileContent - ShareName $shareName - Path " test1./test2../files..." - Destination .\created\testtrailingdot - Context $ctx - Force - PassThru
2471
+ $f.Name | Should - Be " files..."
2472
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2473
+
2474
+ $f = $f | Get-AzStorageFileContent - Destination .\created\testtrailingdot - Context $ctx - Force - PassThru
2475
+ $f.Name | Should - Be " files..."
2476
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2477
+
2478
+ $f = $dir | Get-AzStorageFileContent - Path " files..." - Destination .\created\testtrailingdot - Context $ctx - Force - PassThru
2479
+ $f.Name | Should - Be " files..."
2480
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2481
+
2482
+ $f = $share | Get-AzStorageFileContent - Path " test1./test2../files..." - Destination .\created\testtrailingdot - Context $ctx - Force - PassThru
2483
+ $f.Name | Should - Be " files..."
2484
+ $f.ShareFileClient.Path | Should - Be " test1./test2../files..."
2485
+
2486
+ $f = Get-AzStorageFileContent - ShareName $shareName - Path " test1./test2../files.1.." - Destination .\created\testtrailingdot - Context $ctx - PassThru - Force
2487
+
2488
+ # get file/dir
2489
+ $dir = Get-AzStorageFile - ShareName $shareName - Path " test1./test2.." - Context $ctx
2490
+ $dir.Name | Should - Be " test2.."
2491
+ $dir.ShareDirectoryClient.Path | Should - Be " test1./test2.."
2492
+
2493
+ $files = $dir | Get-AzStorageFile
2494
+ $files.Count | Should - Be 2
2495
+
2496
+ $files = $dir | Get-AzStorageFile - Path " files..."
2497
+ $files.Count | Should - Be 1
2498
+
2499
+ $files = $share | Get-AzStorageFile
2500
+ $files.Count | Should - Be 3
2501
+
2502
+ $f = $share | Get-AzStorageFile - Path " test1./test2.."
2503
+ $f.Name | Should - Be " test2.."
2504
+
2505
+ $file = $share | Get-AzStorageFile - Path " test1./test2../files..."
2506
+ $file.ShareFileClient.GetProperties ()
2507
+
2508
+ # $file.CloudFile.FetchAttributes() # should fail
2509
+
2510
+ # SAS on file
2511
+ $sas = $file | New-AzStorageFileSASToken - Permission rw - ExpiryTime (Get-date ).AddDays(6 )
2512
+ $ctxsas = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
2513
+ $f = Get-AzStorageFile - ShareName $shareName - Path " test1.\test2..\files..." - Context $ctxsas
2514
+ $f.Name | Should - Be " test1.\test2..\files..."
2515
+
2516
+ $sas = New-AzStorageFileSASToken - ShareName $shareName - Path " test1.\test2..\files..." - Context $ctx - Permission rw - ExpiryTime (Get-date ).AddDays(6 )
2517
+ $ctxsas = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
2518
+ $f = Get-AzStorageFile - ShareName $shareName - Path " test1.\test2..\files..." - Context $ctxsas
2519
+ $f.Name | Should - Be " test1.\test2..\files..."
2520
+
2521
+ $sas = New-AzStorageShareSASToken - ShareName $shareName - Permission rw - ExpiryTime (Get-date ).AddDays(6 ) - Context $ctx
2522
+ $ctxsas = New-AzStorageContext - StorageAccountName $storageAccountName - SasToken $sas
2523
+ $dir = Get-AzStorageFile - ShareName $shareName - Path " test1./test2.." - Context $ctxsas
2524
+ $dir.Name | Should - Be " test2.."
2525
+
2526
+ # file handle - test it cmdlets won't fail
2527
+ Get-AzStorageFileHandle - ShareName $shareName - Path " test1.\test2.." - Context $ctx - Recursive
2528
+ Get-AzStorageFileHandle - ShareName $shareName - Path " test1.\test2..\files..." - Context $ctx
2529
+ Close-AzStorageFileHandle - ShareName $shareName - Path " test1.\test2.." - Context $ctx - Recursive - CloseAll
2530
+ Close-AzStorageFileHandle - ShareName $shareName - Path " test1.\test2..\files..." - Context $ctx - CloseAll
2531
+
2532
+ # rename
2533
+ $f = Rename-AzStorageFile - ShareName $shareName - SourcePath " testfile" - DestinationPath " test1.\test2..\files.2.." - Context $ctx
2534
+ $f.Name | Should - Be " test1.\test2..\files.2.."
2535
+ $f = Rename-AzStorageFile - ShareName $shareName - DestinationPath " testfile" - SourcePath " test1.\test2..\files.2.." - Context $ctx
2536
+ $f.Name | Should - Be " testfile"
2537
+ $d = Rename-AzStorageDirectory - ShareName $shareName - SourcePath " dir1" - DestinationPath " test1.\test3.." - Context $ctx
2538
+ $d.Name | Should - Be " test1.\test3.."
2539
+ $d = Rename-AzStorageDirectory - ShareName $shareName - DestinationPath " dir1" - SourcePath " test1.\test3.." - Context $ctx
2540
+ $d.Name | Should - Be " dir1"
2541
+ $d = New-AzStorageDirectory - ShareName $shareName - Path " dir1.." - Context $ctx
2542
+ $f = Set-AzStorageFileContent - ShareName $shareName - Path " test.file.." - Source .\data \testfile_1024K_0 - Context $ctx - PassThru - Force
2543
+ $f = Rename-AzStorageFile - ShareName $shareName - SourcePath " test.file.." - DestinationPath " test1.\test2..\files.2.." - Context $ctx
2544
+ $f.Name | Should - Be " test1.\test2..\files.2.."
2545
+ $f = Rename-AzStorageFile - ShareName $shareName - DestinationPath " test.file.." - SourcePath " test1.\test2..\files.2.." - Context $ctx
2546
+ $f.Name | Should - Be " test.file.."
2547
+ $d = Rename-AzStorageDirectory - ShareName $shareName - SourcePath " dir1.." - DestinationPath " test1.\test3.." - Context $ctx
2548
+ $d.Name | Should - Be " test1.\test3.."
2549
+ $d = Rename-AzStorageDirectory - ShareName $shareName - DestinationPath " dir1.." - SourcePath " test1.\test3.." - Context $ctx
2550
+ $d.Name | Should - Be " dir1.."
2551
+
2552
+
2553
+ Remove-AzStorageShare - Name $sharename - Context $ctx - Force
2554
+ $Error.Count | should - be 0
2555
+ }
2556
+
2557
+
2558
+ It " Test case name" {
2559
+ $Error.Clear ()
2560
+
2378
2561
$Error.Count | should - be 0
2379
2562
}
2380
2563
0 commit comments