30 lines
824 B
Python
30 lines
824 B
Python
|
import random
|
||
|
from datetime import datetime
|
||
|
|
||
|
import allure
|
||
|
import pytest
|
||
|
from frostfs_testlib.storage.cluster import Cluster, ClusterNode
|
||
|
from frostfs_testlib.storage.controllers import ShardsWatcher
|
||
|
|
||
|
|
||
|
@pytest.fixture()
|
||
|
@allure.title("Select random node for testing")
|
||
|
def node_under_test(cluster: Cluster) -> ClusterNode:
|
||
|
selected_node = random.choice(cluster.cluster_nodes)
|
||
|
allure.attach(f"{selected_node}", "Selected node", allure.attachment_type.TEXT)
|
||
|
return selected_node
|
||
|
|
||
|
|
||
|
@pytest.fixture()
|
||
|
@allure.title("Provide Shards watcher")
|
||
|
def shards_watcher(node_under_test: ClusterNode) -> ShardsWatcher:
|
||
|
watcher = ShardsWatcher(node_under_test)
|
||
|
return watcher
|
||
|
|
||
|
|
||
|
@pytest.fixture()
|
||
|
@allure.title("Test start time")
|
||
|
def test_start_time() -> datetime:
|
||
|
start_time = datetime.utcnow()
|
||
|
return start_time
|