소스 검색

[lib] Change boto2 to not override the User Agent if already present

This enables to reuse the boto HttpRequest client with Raz signed URLs.
The Raz URLs are signed and the User Agent is part of the signature,
so this one should not be changed.
Romain Rigaux 4 년 전
부모
커밋
dddaec023e
1개의 변경된 파일13개의 추가작업 그리고 8개의 파일을 삭제
  1. 13 8
      desktop/libs/aws/src/aws/s3/s3connection_test.py

+ 13 - 8
desktop/libs/aws/src/aws/s3/s3connection_test.py

@@ -52,9 +52,11 @@ class TestRazS3Connection():
     with patch('aws.s3.s3connection.S3RazClient.get_url') as get_url:
       with patch('aws.s3.s3connection.RazS3Connection._mexe') as _mexe:
 
-        get_url.return_value = 'https://gethue-test.s3.amazonaws.com/?' + \
-            'AWSAccessKeyId=AKIA23E77ZX2HVY76YGL' + \
-            '&Signature=3lhK%2BwtQ9Q2u5VDIqb4MEpoY3X4%3D&Expires=1617207304'
+        get_url.return_value = {
+            'AWSAccessKeyId': 'AKIA23E77ZX2HVY76YGL',
+            'Signature': '3lhK%2BwtQ9Q2u5VDIqb4MEpoY3X4%3D',
+            'Expires': '1617207304'
+        }
         _mexe.return_value = ['<Bucket: demo-gethue>', '<Bucket: gethue-test>']
 
         client = RazS3Connection(host='s3-us-west-1.amazonaws.com')
@@ -73,12 +75,15 @@ class TestRazS3Connection():
           's3-us-west-1.amazonaws.com:443' if sys.version_info[0] > 2 else 's3-us-west-1.amazonaws.com',
           http_request.host
         )
-        assert_equal(
-          '/?AWSAccessKeyId=AKIA23E77ZX2HVY76YGL&Signature=3lhK%2BwtQ9Q2u5VDIqb4MEpoY3X4%3D&Expires=1617207304',
-          http_request.path
-        )
+        assert_equal('/', http_request.path)
         assert_equal('/', http_request.auth_path)
-        assert_equal({}, http_request.headers )
+        assert_equal({
+            'AWSAccessKeyId': 'AKIA23E77ZX2HVY76YGL',
+            'Signature': '3lhK%2BwtQ9Q2u5VDIqb4MEpoY3X4%3D',
+            'Expires': '1617207304'
+          },
+          http_request.headers
+        )
         assert_equal({}, http_request.params)
         assert_equal('', http_request.body)