Fix senario test: test_swift_acl_anonymous_download
In Zuul and Jenkins gate jobs like [1][2], the senario test: test_swift_acl_anonymous_download is always failed, which is in file test_object_storage_basic_ops.py. The reason is that the function 'change_container_acl' in tempest.senario.manager.ObjectStorageSenarioTest is implemented incorrectly. This patch fixes the problem. [1] legacy-tempest-dsvm-neutron-scenario-multinode-lvm-multibackend [2] gate-tempest-dsvm-neutron-scenario-multinode-lvm-multibackend-ubuntu-xenial-nv Closes-bug: #1722164 Change-Id: I4b3b6f4d7c5fd5e1e968b0144ecc2a7b3eae206b
This commit is contained in:
parent
b39e6b25c9
commit
50688db21b
@ -1324,14 +1324,6 @@ class ObjectStorageScenarioTest(ScenarioTest):
|
||||
for obj in not_present_obj:
|
||||
self.assertNotIn(obj, object_list)
|
||||
|
||||
def change_container_acl(self, container_name, acl):
|
||||
metadata_param = {'metadata_prefix': 'x-container-',
|
||||
'metadata': {'read': acl}}
|
||||
self.container_client.create_update_or_delete_container_metadata(
|
||||
container_name, create_update_metadata=metadata_param)
|
||||
resp, _ = self.container_client.list_container_metadata(container_name)
|
||||
self.assertEqual(resp['x-container-read'], acl)
|
||||
|
||||
def download_and_verify(self, container_name, obj_name, expected_data):
|
||||
_, obj = self.object_client.get_object(container_name, obj_name)
|
||||
self.assertEqual(obj, expected_data)
|
||||
|
@ -58,12 +58,18 @@ class TestObjectStorageBasicOps(manager.ObjectStorageScenarioTest):
|
||||
5. Delete the object and container
|
||||
"""
|
||||
container_name = self.create_container()
|
||||
obj_name, _ = self.upload_object_to_container(container_name)
|
||||
obj_name, obj_data = self.upload_object_to_container(container_name)
|
||||
obj_url = '%s/%s/%s' % (self.object_client.base_url,
|
||||
container_name, obj_name)
|
||||
resp, _ = self.object_client.raw_request(obj_url, 'GET')
|
||||
self.assertEqual(resp.status, 401)
|
||||
|
||||
self.change_container_acl(container_name, '.r:*')
|
||||
resp, _ = self.object_client.raw_request(obj_url, 'GET')
|
||||
metadata_param = {'X-Container-Read': '.r:*'}
|
||||
self.container_client.create_update_or_delete_container_metadata(
|
||||
container_name, create_update_metadata=metadata_param,
|
||||
create_update_metadata_prefix='')
|
||||
resp, _ = self.container_client.list_container_metadata(container_name)
|
||||
self.assertEqual(metadata_param['X-Container-Read'],
|
||||
resp['x-container-read'])
|
||||
resp, data = self.object_client.raw_request(obj_url, 'GET')
|
||||
self.assertEqual(resp.status, 200)
|
||||
self.assertEqual(obj_data, data)
|
||||
|
Loading…
x
Reference in New Issue
Block a user