@@ -2,6 +2,7 @@ package e2etest
2
2
3
3
import (
4
4
"github.com/Azure/azure-storage-azcopy/v10/common"
5
+ "strings"
5
6
"time"
6
7
)
7
8
@@ -64,3 +65,42 @@ func (s *BasicFunctionalitySuite) Scenario_SingleFileUploadDownload(svm *Scenari
64
65
Body : body ,
65
66
}, true )
66
67
}
68
+
69
+ func (s * BasicFunctionalitySuite ) Scenario_SingleFileUploadDownload_EmptySAS (svm * ScenarioVariationManager ) {
70
+ azCopyVerb := ResolveVariation (svm , []AzCopyVerb {AzCopyVerbCopy , AzCopyVerbSync })
71
+
72
+ dstObj := CreateResource [ContainerResourceManager ](svm , GetRootResource (svm , ResolveVariation (svm , []common.Location {common .ELocation .Local (), common .ELocation .Blob (), common .ELocation .File (), common .ELocation .BlobFS ()})), ResourceDefinitionContainer {}).GetObject (svm , "test" , common .EEntityType .File ())
73
+
74
+ // Scale up from service to object
75
+ srcObj := CreateResource [ObjectResourceManager ](svm , GetRootResource (svm , ResolveVariation (svm , []common.Location {common .ELocation .Local (), common .ELocation .Blob (), common .ELocation .File (), common .ELocation .BlobFS ()})), ResourceDefinitionObject {})
76
+
77
+ // no local <-> local
78
+ if srcObj .Location ().IsLocal () == dstObj .Location ().IsLocal () {
79
+ svm .InvalidateScenario ()
80
+ return
81
+ }
82
+
83
+ stdout , _ := RunAzCopy (
84
+ svm ,
85
+ AzCopyCommand {
86
+ Verb : azCopyVerb ,
87
+ Targets : []ResourceManager {
88
+ TryApplySpecificAuthType (srcObj , EExplicitCredentialType .PublicAuth (), svm , CreateAzCopyTargetOptions {}),
89
+ TryApplySpecificAuthType (dstObj , EExplicitCredentialType .PublicAuth (), svm , CreateAzCopyTargetOptions {}),
90
+ },
91
+ Flags : CopyFlags {
92
+ CopySyncCommonFlags : CopySyncCommonFlags {
93
+ Recursive : pointerTo (true ),
94
+ },
95
+ },
96
+ ShouldFail : true ,
97
+ })
98
+
99
+ for _ , line := range stdout .RawStdout () {
100
+ if strings .Contains (line , "Please authenticate using Microsoft Entra ID (https://aka.ms/AzCopy/AuthZ), use AzCopy login, or append SAS to your Azure URL." ) {
101
+ return
102
+ }
103
+ }
104
+
105
+ svm .Error ("expected output not found in azcopy output" )
106
+ }
0 commit comments