summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorZuul <zuul@review.opendev.org>2023-04-03 19:18:58 +0000
committerGerrit Code Review <review@openstack.org>2023-04-03 19:18:58 +0000
commit3cfe610a696405c924d9f86fd17453675c668eb6 (patch)
tree887b8d2225f32eaa0672e9d5854717ae32f454a1 /test
parent629516cbe7eb583c18f429aa04d912c2df24b1a5 (diff)
parent78f13be75c651814adc4f8fa23e3548737cd1005 (diff)
downloadswift-3cfe610a696405c924d9f86fd17453675c668eb6.tar.gz
Merge "tests: Let func tests run with test users 1 and 2 but not 3"
Diffstat (limited to 'test')
-rw-r--r--test/functional/test_versioned_writes.py81
1 files changed, 42 insertions, 39 deletions
diff --git a/test/functional/test_versioned_writes.py b/test/functional/test_versioned_writes.py
index 30cb74c88..1f8023729 100644
--- a/test/functional/test_versioned_writes.py
+++ b/test/functional/test_versioned_writes.py
@@ -561,44 +561,46 @@ class TestObjectVersioning(Base):
break
self.assertEqual(backup_file.read(), b"never argue with the data")
- # user3 (some random user with no access to any of account1)
- # tries to read from versioned container
- self.assertRaises(ResponseError, backup_file.read,
- cfg={'use_token': self.env.storage_token3})
-
- # create an object user3 can try to copy
- a2_container = self.env.account2.container(Utils.create_name())
- a2_container.create(
- hdrs={'X-Container-Read': self.env.conn3.user_acl},
- cfg={'use_token': self.env.storage_token2})
- a2_obj = a2_container.file(Utils.create_name())
- self.assertTrue(a2_obj.write(b"unused",
- cfg={'use_token': self.env.storage_token2}))
-
- # user3 cannot write, delete, or copy to/from source container either
- number_of_versions = versions_container.info()['object_count']
- self.assertRaises(ResponseError, versioned_obj.write,
- b"some random user trying to write data",
- cfg={'use_token': self.env.storage_token3})
- self.assertEqual(number_of_versions,
- versions_container.info()['object_count'])
- self.assertRaises(ResponseError, versioned_obj.delete,
- cfg={'use_token': self.env.storage_token3})
- self.assertEqual(number_of_versions,
- versions_container.info()['object_count'])
- self.assertRaises(
- ResponseError, versioned_obj.write,
- hdrs={'X-Copy-From': '%s/%s' % (a2_container.name, a2_obj.name),
- 'X-Copy-From-Account': self.env.conn2.account_name},
- cfg={'use_token': self.env.storage_token3})
- self.assertEqual(number_of_versions,
- versions_container.info()['object_count'])
- self.assertRaises(
- ResponseError, a2_obj.copy_account,
- self.env.conn.account_name, container.name, obj_name,
- cfg={'use_token': self.env.storage_token3})
- self.assertEqual(number_of_versions,
- versions_container.info()['object_count'])
+ if not tf.skip3:
+ # user3 (some random user with no access to any of account1)
+ # tries to read from versioned container
+ self.assertRaises(ResponseError, backup_file.read,
+ cfg={'use_token': self.env.storage_token3})
+
+ # create an object user3 can try to copy
+ a2_container = self.env.account2.container(Utils.create_name())
+ a2_container.create(
+ hdrs={'X-Container-Read': self.env.conn3.user_acl},
+ cfg={'use_token': self.env.storage_token2})
+ a2_obj = a2_container.file(Utils.create_name())
+ self.assertTrue(a2_obj.write(b"unused",
+ cfg={'use_token': self.env.storage_token2}))
+
+ # user3 also cannot write, delete, or copy to/from source container
+ number_of_versions = versions_container.info()['object_count']
+ self.assertRaises(ResponseError, versioned_obj.write,
+ b"some random user trying to write data",
+ cfg={'use_token': self.env.storage_token3})
+ self.assertEqual(number_of_versions,
+ versions_container.info()['object_count'])
+ self.assertRaises(ResponseError, versioned_obj.delete,
+ cfg={'use_token': self.env.storage_token3})
+ self.assertEqual(number_of_versions,
+ versions_container.info()['object_count'])
+ self.assertRaises(
+ ResponseError, versioned_obj.write,
+ hdrs={
+ 'X-Copy-From': '%s/%s' % (a2_container.name, a2_obj.name),
+ 'X-Copy-From-Account': self.env.conn2.account_name},
+ cfg={'use_token': self.env.storage_token3})
+ self.assertEqual(number_of_versions,
+ versions_container.info()['object_count'])
+ self.assertRaises(
+ ResponseError, a2_obj.copy_account,
+ self.env.conn.account_name, container.name, obj_name,
+ cfg={'use_token': self.env.storage_token3})
+ self.assertEqual(number_of_versions,
+ versions_container.info()['object_count'])
# user2 can't read or delete from versions-location
self.assertRaises(ResponseError, backup_file.read,
@@ -615,7 +617,8 @@ class TestObjectVersioning(Base):
# tear-down since we create these containers here
# and not in self.env
- a2_container.delete_recursive()
+ if not tf.skip3:
+ a2_container.delete_recursive()
versions_container.delete_recursive()
container.delete_recursive()