forked from TrueCloudLab/frostfs-testcases
[#306] Refactor tests: use unique_name
instead hex + timestamp
Signed-off-by: Kirill Sosnovskikh <k.sosnovskikh@yadro.com>
This commit is contained in:
parent
d10e5975e7
commit
44ed00f9bc
2 changed files with 10 additions and 22 deletions
|
@ -1,6 +1,5 @@
|
||||||
import logging
|
import logging
|
||||||
import re
|
import re
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
import allure
|
import allure
|
||||||
import pytest
|
import pytest
|
||||||
|
@ -30,7 +29,7 @@ from frostfs_testlib.storage.dataclasses.storage_object_info import LockObjectIn
|
||||||
from frostfs_testlib.storage.dataclasses.wallet import WalletInfo
|
from frostfs_testlib.storage.dataclasses.wallet import WalletInfo
|
||||||
from frostfs_testlib.testing.cluster_test_base import ClusterTestBase
|
from frostfs_testlib.testing.cluster_test_base import ClusterTestBase
|
||||||
from frostfs_testlib.testing.test_control import expect_not_raises, wait_for_success
|
from frostfs_testlib.testing.test_control import expect_not_raises, wait_for_success
|
||||||
from frostfs_testlib.utils import datetime_utils
|
from frostfs_testlib.utils import datetime_utils, string_utils
|
||||||
|
|
||||||
from pytest_tests.helpers.utility import wait_for_gc_pass_on_storage_nodes
|
from pytest_tests.helpers.utility import wait_for_gc_pass_on_storage_nodes
|
||||||
|
|
||||||
|
@ -43,7 +42,7 @@ FIXTURE_OBJECT_LIFETIME = 10
|
||||||
@pytest.fixture(scope="module")
|
@pytest.fixture(scope="module")
|
||||||
def user_wallet(credentials_provider: CredentialsProvider, cluster: Cluster) -> WalletInfo:
|
def user_wallet(credentials_provider: CredentialsProvider, cluster: Cluster) -> WalletInfo:
|
||||||
with reporter.step("Create user wallet with container"):
|
with reporter.step("Create user wallet with container"):
|
||||||
user = User(f"user_{hex(int(datetime.now().timestamp() * 1000000))}")
|
user = User(string_utils.unique_name("user_"))
|
||||||
return credentials_provider.GRPC.provide(user, cluster.cluster_nodes[0])
|
return credentials_provider.GRPC.provide(user, cluster.cluster_nodes[0])
|
||||||
|
|
||||||
|
|
||||||
|
@ -67,9 +66,7 @@ def locked_storage_object(
|
||||||
current_epoch = ensure_fresh_epoch(client_shell, cluster)
|
current_epoch = ensure_fresh_epoch(client_shell, cluster)
|
||||||
expiration_epoch = current_epoch + FIXTURE_LOCK_LIFETIME
|
expiration_epoch = current_epoch + FIXTURE_LOCK_LIFETIME
|
||||||
|
|
||||||
storage_object = user_container.generate_object(
|
storage_object = user_container.generate_object(object_size.value, expire_at=current_epoch + FIXTURE_OBJECT_LIFETIME)
|
||||||
object_size.value, expire_at=current_epoch + FIXTURE_OBJECT_LIFETIME
|
|
||||||
)
|
|
||||||
lock_object_id = lock_object(
|
lock_object_id = lock_object(
|
||||||
storage_object.wallet,
|
storage_object.wallet,
|
||||||
storage_object.cid,
|
storage_object.cid,
|
||||||
|
@ -78,9 +75,7 @@ def locked_storage_object(
|
||||||
cluster.default_rpc_endpoint,
|
cluster.default_rpc_endpoint,
|
||||||
lifetime=FIXTURE_LOCK_LIFETIME,
|
lifetime=FIXTURE_LOCK_LIFETIME,
|
||||||
)
|
)
|
||||||
storage_object.locks = [
|
storage_object.locks = [LockObjectInfo(storage_object.cid, lock_object_id, FIXTURE_LOCK_LIFETIME, expiration_epoch)]
|
||||||
LockObjectInfo(storage_object.cid, lock_object_id, FIXTURE_LOCK_LIFETIME, expiration_epoch)
|
|
||||||
]
|
|
||||||
|
|
||||||
yield storage_object
|
yield storage_object
|
||||||
|
|
||||||
|
@ -142,9 +137,7 @@ class TestObjectLockWithGrpc(ClusterTestBase):
|
||||||
with reporter.step("Creating locked object"):
|
with reporter.step("Creating locked object"):
|
||||||
current_epoch = self.get_epoch()
|
current_epoch = self.get_epoch()
|
||||||
|
|
||||||
storage_object = user_container.generate_object(
|
storage_object = user_container.generate_object(object_size.value, expire_at=current_epoch + FIXTURE_OBJECT_LIFETIME)
|
||||||
object_size.value, expire_at=current_epoch + FIXTURE_OBJECT_LIFETIME
|
|
||||||
)
|
|
||||||
lock_object(
|
lock_object(
|
||||||
storage_object.wallet,
|
storage_object.wallet,
|
||||||
storage_object.cid,
|
storage_object.cid,
|
||||||
|
@ -220,9 +213,7 @@ class TestObjectLockWithGrpc(ClusterTestBase):
|
||||||
1,
|
1,
|
||||||
)
|
)
|
||||||
|
|
||||||
@allure.title(
|
@allure.title("Lock must contain valid lifetime or expire_at field: (lifetime={wrong_lifetime}, expire-at={wrong_expire_at})")
|
||||||
"Lock must contain valid lifetime or expire_at field: (lifetime={wrong_lifetime}, expire-at={wrong_expire_at})"
|
|
||||||
)
|
|
||||||
# We operate with only lock object here so no complex object needed in this test
|
# We operate with only lock object here so no complex object needed in this test
|
||||||
@pytest.mark.parametrize("object_size", ["simple"], indirect=True)
|
@pytest.mark.parametrize("object_size", ["simple"], indirect=True)
|
||||||
@pytest.mark.parametrize(
|
@pytest.mark.parametrize(
|
||||||
|
@ -675,9 +666,7 @@ class TestObjectLockWithGrpc(ClusterTestBase):
|
||||||
|
|
||||||
with reporter.step("Generate two objects"):
|
with reporter.step("Generate two objects"):
|
||||||
for epoch_i in range(2):
|
for epoch_i in range(2):
|
||||||
storage_objects.append(
|
storage_objects.append(user_container.generate_object(object_size.value, expire_at=current_epoch + epoch_i + 3))
|
||||||
user_container.generate_object(object_size.value, expire_at=current_epoch + epoch_i + 3)
|
|
||||||
)
|
|
||||||
|
|
||||||
self.tick_epoch()
|
self.tick_epoch()
|
||||||
|
|
||||||
|
|
|
@ -1,10 +1,9 @@
|
||||||
from datetime import datetime
|
|
||||||
|
|
||||||
import pytest
|
import pytest
|
||||||
from frostfs_testlib import reporter
|
from frostfs_testlib import reporter
|
||||||
from frostfs_testlib.credentials.interfaces import CredentialsProvider, User
|
from frostfs_testlib.credentials.interfaces import CredentialsProvider, User
|
||||||
from frostfs_testlib.storage.cluster import Cluster
|
from frostfs_testlib.storage.cluster import Cluster
|
||||||
from frostfs_testlib.storage.dataclasses.wallet import WalletInfo
|
from frostfs_testlib.storage.dataclasses.wallet import WalletInfo
|
||||||
|
from frostfs_testlib.utils import string_utils
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture(scope="module")
|
@pytest.fixture(scope="module")
|
||||||
|
@ -15,12 +14,12 @@ def owner_wallet(default_wallet: WalletInfo) -> WalletInfo:
|
||||||
@pytest.fixture(scope="module")
|
@pytest.fixture(scope="module")
|
||||||
def user_wallet(credentials_provider: CredentialsProvider, cluster: Cluster) -> WalletInfo:
|
def user_wallet(credentials_provider: CredentialsProvider, cluster: Cluster) -> WalletInfo:
|
||||||
with reporter.step("Create user wallet which will use objects from owner via static session"):
|
with reporter.step("Create user wallet which will use objects from owner via static session"):
|
||||||
user = User(f"user_{hex(int(datetime.now().timestamp() * 1000000))}")
|
user = User(string_utils.unique_name("user_"))
|
||||||
return credentials_provider.GRPC.provide(user, cluster.cluster_nodes[0])
|
return credentials_provider.GRPC.provide(user, cluster.cluster_nodes[0])
|
||||||
|
|
||||||
|
|
||||||
@pytest.fixture(scope="module")
|
@pytest.fixture(scope="module")
|
||||||
def stranger_wallet(credentials_provider: CredentialsProvider, cluster: Cluster) -> WalletInfo:
|
def stranger_wallet(credentials_provider: CredentialsProvider, cluster: Cluster) -> WalletInfo:
|
||||||
with reporter.step("Create stranger user wallet which should fail to obtain data"):
|
with reporter.step("Create stranger user wallet which should fail to obtain data"):
|
||||||
user = User(f"user_{hex(int(datetime.now().timestamp() * 1000000))}")
|
user = User(string_utils.unique_name("user_"))
|
||||||
return credentials_provider.GRPC.provide(user, cluster.cluster_nodes[0])
|
return credentials_provider.GRPC.provide(user, cluster.cluster_nodes[0])
|
||||||
|
|
Loading…
Reference in a new issue