示例#1
0
 def test_object_acl(self):
     """Can specify an object ACL for S3 objects"""
     settings = dict(self.settings)
     settings["storage.object_acl"] = "authenticated-read"
     kwargs = S3Storage.configure(settings)
     storage = S3Storage(MagicMock(), **kwargs)
     package = make_package()
     storage.upload(package, BytesIO())
     acl = list(self.bucket.objects.all())[0].Object().Acl()
     self.assertItemsEqual(
         acl.grants,
         [
             {
                 "Grantee": {
                     "Type": "CanonicalUser",
                     "ID": ANY
                 },
                 "Permission": "FULL_CONTROL",
             },
             {
                 "Grantee": {
                     "Type":
                     "Group",
                     "URI":
                     "http://acs.amazonaws.com/groups/global/AuthenticatedUsers",
                 },
                 "Permission": "READ",
             },
         ],
     )
示例#2
0
 def test_storage_class(self):
     """Can specify a storage class for S3 objects"""
     settings = dict(self.settings)
     settings["storage.storage_class"] = "STANDARD_IA"
     kwargs = S3Storage.configure(settings)
     storage = S3Storage(MagicMock(), **kwargs)
     package = make_package()
     storage.upload(package, BytesIO())
     storage_class = list(
         self.bucket.objects.all())[0].Object().storage_class
     self.assertItemsEqual(storage_class, "STANDARD_IA")
示例#3
0
 def setUp(self):
     super(TestS3Storage, self).setUp()
     self.s3_mock = mock_s3()
     self.s3_mock.start()
     self.settings = {
         "storage.bucket": "mybucket",
         "storage.aws_access_key_id": "abc",
         "storage.aws_secret_access_key": "bcd",
     }
     self.s3 = boto3.resource("s3")
     self.bucket = self.s3.create_bucket(Bucket="mybucket")
     patch.object(S3Storage, "test", True).start()
     kwargs = S3Storage.configure(self.settings)
     self.storage = S3Storage(MagicMock(), **kwargs)
示例#4
0
 def setUp(self):
     super(TestS3Storage, self).setUp()
     self.s3_mock = mock_s3()
     self.s3_mock.start()
     self.settings = {
         'storage.bucket': 'mybucket',
         'storage.aws_access_key_id': 'abc',
         'storage.aws_secret_access_key': 'bcd',
     }
     self.s3 = boto3.resource('s3')
     self.bucket = self.s3.create_bucket(Bucket='mybucket')
     patch.object(S3Storage, 'test', True).start()
     kwargs = S3Storage.configure(self.settings)
     self.storage = S3Storage(MagicMock(), **kwargs)
示例#5
0
 def setUp(self):
     super(TestS3Storage, self).setUp()
     self.s3_mock = mock_s3()
     self.s3_mock.start()
     self.settings = {
         'storage.bucket': 'mybucket',
         'storage.access_key': 'abc',
         'storage.secret_key': 'bcd',
     }
     conn = boto.connect_s3()
     self.bucket = conn.create_bucket('mybucket')
     patch.object(S3Storage, 'test', True).start()
     kwargs = S3Storage.configure(self.settings)
     self.storage = S3Storage(MagicMock(), **kwargs)
示例#6
0
 def setUp(self):
     super(TestS3Storage, self).setUp()
     self.s3_mock = mock_s3()
     self.s3_mock.start()
     config = MagicMock()
     self.settings = {
         'aws.bucket': 'mybucket',
         'aws.access_key': 'abc',
         'aws.secret_key': 'bcd',
     }
     config.get_settings.return_value = self.settings
     conn = boto.connect_s3()
     self.bucket = conn.create_bucket('mybucket')
     patch.object(S3Storage, 'test', True).start()
     S3Storage.configure(config)
     self.storage = S3Storage(MagicMock())
示例#7
0
 def test_object_acl(self):
     """ Can specify an object ACL for S3 objects """
     settings = dict(self.settings)
     settings['storage.object_acl'] = 'authenticated-read'
     kwargs = S3Storage.configure(settings)
     storage = S3Storage(MagicMock(), **kwargs)
     package = make_package()
     storage.upload(package, BytesIO())
     acl = list(self.bucket.objects.all())[0].Object().Acl()
     self.assertItemsEqual(acl.grants, [{
         'Grantee': {
             'Type': 'CanonicalUser',
             'ID': ANY
         },
         'Permission': 'FULL_CONTROL'
     }, {
         'Grantee': {
             'Type': 'Group',
             'URI':
             'http://acs.amazonaws.com/groups/global/AuthenticatedUsers'
         },
         'Permission': 'READ'
     }])