forked from TrueCloudLab/frostfs-testcases
Skip teardown if sanity in markexpr
This commit is contained in:
parent
e5093bf6ac
commit
d7144c65bf
10 changed files with 13 additions and 27 deletions
|
@ -246,7 +246,8 @@ def versioning_status(request: pytest.FixtureRequest) -> VersioningStatus:
|
||||||
|
|
||||||
@allure.step("Create/delete bucket")
|
@allure.step("Create/delete bucket")
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def bucket(s3_client: S3ClientWrapper, versioning_status: VersioningStatus):
|
def bucket(s3_client: S3ClientWrapper, versioning_status: VersioningStatus, request: pytest.FixtureRequest):
|
||||||
|
|
||||||
bucket_name = s3_client.create_bucket()
|
bucket_name = s3_client.create_bucket()
|
||||||
|
|
||||||
if versioning_status:
|
if versioning_status:
|
||||||
|
@ -254,20 +255,20 @@ def bucket(s3_client: S3ClientWrapper, versioning_status: VersioningStatus):
|
||||||
|
|
||||||
yield bucket_name
|
yield bucket_name
|
||||||
|
|
||||||
|
if "sanity" not in request.config.option.markexpr:
|
||||||
# s3_helper.delete_bucket_with_objects(s3_client, bucket_name)
|
s3_helper.delete_bucket_with_objects(s3_client, bucket_name)
|
||||||
|
|
||||||
|
|
||||||
@allure.step("Create two buckets")
|
@allure.step("Create two buckets")
|
||||||
@pytest.fixture
|
@pytest.fixture
|
||||||
def two_buckets(s3_client: S3ClientWrapper):
|
def two_buckets(s3_client: S3ClientWrapper, request: pytest.FixtureRequest):
|
||||||
bucket_1 = s3_client.create_bucket()
|
bucket_1 = s3_client.create_bucket()
|
||||||
bucket_2 = s3_client.create_bucket()
|
bucket_2 = s3_client.create_bucket()
|
||||||
yield bucket_1, bucket_2
|
yield bucket_1, bucket_2
|
||||||
|
|
||||||
|
if "sanity" not in request.config.option.markexpr:
|
||||||
# for bucket_name in [bucket_1, bucket_2]:
|
for bucket_name in [bucket_1, bucket_2]:
|
||||||
# s3_helper.delete_bucket_with_objects(s3_client, bucket_name)
|
s3_helper.delete_bucket_with_objects(s3_client, bucket_name)
|
||||||
|
|
||||||
|
|
||||||
@allure.step("[Autouse/Session] Check binary versions")
|
@allure.step("[Autouse/Session] Check binary versions")
|
||||||
|
|
|
@ -6,15 +6,12 @@ from frostfs_testlib.storage.dataclasses.object_size import ObjectSize
|
||||||
from frostfs_testlib.utils.file_utils import generate_file
|
from frostfs_testlib.utils.file_utils import generate_file
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.acl
|
@pytest.mark.acl
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
class TestS3GateACL:
|
class TestS3GateACL:
|
||||||
@allure.title("Object ACL (s3_client={s3_client})")
|
@allure.title("Object ACL (s3_client={s3_client})")
|
||||||
@pytest.mark.parametrize("s3_client", [AwsCliClient], indirect=True)
|
@pytest.mark.parametrize("s3_client", [AwsCliClient], indirect=True)
|
||||||
def test_s3_object_ACL(
|
def test_s3_object_ACL(self, s3_client: S3ClientWrapper, bucket: str, simple_object_size: ObjectSize):
|
||||||
self, s3_client: S3ClientWrapper, bucket: str, simple_object_size: ObjectSize
|
|
||||||
):
|
|
||||||
file_path = generate_file(simple_object_size.value)
|
file_path = generate_file(simple_object_size.value)
|
||||||
file_name = s3_helper.object_key_from_file_path(file_path)
|
file_name = s3_helper.object_key_from_file_path(file_path)
|
||||||
|
|
||||||
|
@ -33,9 +30,7 @@ class TestS3GateACL:
|
||||||
obj_acl = s3_client.get_object_acl(bucket, file_name)
|
obj_acl = s3_client.get_object_acl(bucket, file_name)
|
||||||
s3_helper.assert_s3_acl(acl_grants=obj_acl, permitted_users="CanonicalUser")
|
s3_helper.assert_s3_acl(acl_grants=obj_acl, permitted_users="CanonicalUser")
|
||||||
|
|
||||||
with allure.step(
|
with allure.step("Put object with grant-read uri=http://acs.amazonaws.com/groups/global/AllUsers"):
|
||||||
"Put object with grant-read uri=http://acs.amazonaws.com/groups/global/AllUsers"
|
|
||||||
):
|
|
||||||
s3_client.put_object_acl(
|
s3_client.put_object_acl(
|
||||||
bucket,
|
bucket,
|
||||||
file_name,
|
file_name,
|
||||||
|
@ -48,9 +43,7 @@ class TestS3GateACL:
|
||||||
@pytest.mark.parametrize("s3_client", [AwsCliClient, Boto3ClientWrapper], indirect=True)
|
@pytest.mark.parametrize("s3_client", [AwsCliClient, Boto3ClientWrapper], indirect=True)
|
||||||
def test_s3_bucket_ACL(self, s3_client: S3ClientWrapper):
|
def test_s3_bucket_ACL(self, s3_client: S3ClientWrapper):
|
||||||
with allure.step("Create bucket with ACL = public-read-write"):
|
with allure.step("Create bucket with ACL = public-read-write"):
|
||||||
bucket = s3_client.create_bucket(
|
bucket = s3_client.create_bucket(object_lock_enabled_for_bucket=True, acl="public-read-write")
|
||||||
object_lock_enabled_for_bucket=True, acl="public-read-write"
|
|
||||||
)
|
|
||||||
bucket_acl = s3_client.get_bucket_acl(bucket)
|
bucket_acl = s3_client.get_bucket_acl(bucket)
|
||||||
s3_helper.assert_s3_acl(acl_grants=bucket_acl, permitted_users="AllUsers")
|
s3_helper.assert_s3_acl(acl_grants=bucket_acl, permitted_users="AllUsers")
|
||||||
|
|
||||||
|
@ -59,9 +52,7 @@ class TestS3GateACL:
|
||||||
bucket_acl = s3_client.get_bucket_acl(bucket)
|
bucket_acl = s3_client.get_bucket_acl(bucket)
|
||||||
s3_helper.assert_s3_acl(acl_grants=bucket_acl, permitted_users="CanonicalUser")
|
s3_helper.assert_s3_acl(acl_grants=bucket_acl, permitted_users="CanonicalUser")
|
||||||
|
|
||||||
with allure.step(
|
with allure.step("Change bucket acl to --grant-write uri=http://acs.amazonaws.com/groups/global/AllUsers"):
|
||||||
"Change bucket acl to --grant-write uri=http://acs.amazonaws.com/groups/global/AllUsers"
|
|
||||||
):
|
|
||||||
s3_client.put_bucket_acl(
|
s3_client.put_bucket_acl(
|
||||||
bucket,
|
bucket,
|
||||||
grant_write="uri=http://acs.amazonaws.com/groups/global/AllUsers",
|
grant_write="uri=http://acs.amazonaws.com/groups/global/AllUsers",
|
||||||
|
|
|
@ -8,7 +8,6 @@ from frostfs_testlib.storage.dataclasses.object_size import ObjectSize
|
||||||
from frostfs_testlib.utils.file_utils import generate_file
|
from frostfs_testlib.utils.file_utils import generate_file
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_bucket
|
@pytest.mark.s3_gate_bucket
|
||||||
class TestS3GateBucket:
|
class TestS3GateBucket:
|
||||||
|
|
|
@ -23,6 +23,7 @@ logger = logging.getLogger("NeoLogger")
|
||||||
|
|
||||||
|
|
||||||
@allure.link("https://github.com/TrueCloudLab/frostfs-s3-gw#frostfs-s3-gw", name="frostfs-s3-gateway")
|
@allure.link("https://github.com/TrueCloudLab/frostfs-s3-gw#frostfs-s3-gw", name="frostfs-s3-gateway")
|
||||||
|
@pytest.mark.sanity
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_base
|
@pytest.mark.s3_gate_base
|
||||||
class TestS3Gate:
|
class TestS3Gate:
|
||||||
|
|
|
@ -9,7 +9,6 @@ from frostfs_testlib.storage.dataclasses.object_size import ObjectSize
|
||||||
from frostfs_testlib.utils.file_utils import generate_file, generate_file_with_content
|
from frostfs_testlib.utils.file_utils import generate_file, generate_file_with_content
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_locking
|
@pytest.mark.s3_gate_locking
|
||||||
@pytest.mark.parametrize("version_id", [None, "second"])
|
@pytest.mark.parametrize("version_id", [None, "second"])
|
||||||
|
|
|
@ -10,7 +10,6 @@ from frostfs_testlib.utils.file_utils import generate_file, get_file_hash, split
|
||||||
PART_SIZE = 5 * 1024 * 1024
|
PART_SIZE = 5 * 1024 * 1024
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_multipart
|
@pytest.mark.s3_gate_multipart
|
||||||
class TestS3GateMultipart(ClusterTestBase):
|
class TestS3GateMultipart(ClusterTestBase):
|
||||||
|
|
|
@ -17,7 +17,6 @@ from frostfs_testlib.utils import wallet_utils
|
||||||
from frostfs_testlib.utils.file_utils import concat_files, generate_file, generate_file_with_content, get_file_hash
|
from frostfs_testlib.utils.file_utils import concat_files, generate_file, generate_file_with_content, get_file_hash
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_object
|
@pytest.mark.s3_gate_object
|
||||||
class TestS3GateObject:
|
class TestS3GateObject:
|
||||||
|
|
|
@ -12,7 +12,6 @@ from frostfs_testlib.testing.test_control import expect_not_raises
|
||||||
from frostfs_testlib.utils.file_utils import generate_file
|
from frostfs_testlib.utils.file_utils import generate_file
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.parametrize("s3_policy", ["pytest_tests/resources/files/policy.json"], indirect=True)
|
@pytest.mark.parametrize("s3_policy", ["pytest_tests/resources/files/policy.json"], indirect=True)
|
||||||
class TestS3GatePolicy(ClusterTestBase):
|
class TestS3GatePolicy(ClusterTestBase):
|
||||||
|
|
|
@ -10,7 +10,6 @@ from frostfs_testlib.storage.dataclasses.object_size import ObjectSize
|
||||||
from frostfs_testlib.utils.file_utils import generate_file
|
from frostfs_testlib.utils.file_utils import generate_file
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_tagging
|
@pytest.mark.s3_gate_tagging
|
||||||
class TestS3GateTagging:
|
class TestS3GateTagging:
|
||||||
|
|
|
@ -6,7 +6,6 @@ from frostfs_testlib.storage.dataclasses.object_size import ObjectSize
|
||||||
from frostfs_testlib.utils.file_utils import generate_file, generate_file_with_content
|
from frostfs_testlib.utils.file_utils import generate_file, generate_file_with_content
|
||||||
|
|
||||||
|
|
||||||
@pytest.mark.sanity
|
|
||||||
@pytest.mark.s3_gate
|
@pytest.mark.s3_gate
|
||||||
@pytest.mark.s3_gate_versioning
|
@pytest.mark.s3_gate_versioning
|
||||||
class TestS3GateVersioning:
|
class TestS3GateVersioning:
|
||||||
|
|
Loading…
Reference in a new issue