diff --git a/test/int/conftest.py b/test/int/conftest.py index 247ad01ef90a4e15647eedcb013d5d03af57293d..f78ee4af6bb49c2ff28861ca858a9f46016598b3 100644 --- a/test/int/conftest.py +++ b/test/int/conftest.py @@ -23,13 +23,13 @@ from tarantool.error import ( # type: ignore # A constant represents invalid id of raft. # pub const INVALID_ID: u64 = 0; INVALID_RAFT_ID = 0 -RE_XDIST_WORKER_ID = re.compile(r"^gw(\d+)$") def eprint(*args, **kwargs): print(*args, file=sys.stderr, **kwargs) +@pytest.fixture(scope="session") def xdist_worker_number(worker_id: str) -> int: """ Identify xdist worker by an integer instead of a string. @@ -40,9 +40,8 @@ def xdist_worker_number(worker_id: str) -> int: if worker_id == "master": return 0 - match = RE_XDIST_WORKER_ID.match(worker_id) - if not match: - raise ValueError(worker_id) + match = re.fullmatch(r"gw(\d+)", worker_id) + assert match, f"unexpected worker id: {worker_id}" return int(match.group(1)) @@ -403,8 +402,8 @@ def binary_path(compile) -> str: @pytest.fixture -def cluster(binary_path, tmpdir, worker_id) -> Generator[Cluster, None, None]: - n = xdist_worker_number(worker_id) +def cluster(binary_path, tmpdir, xdist_worker_number) -> Generator[Cluster, None, None]: + n = xdist_worker_number assert isinstance(n, int) assert n >= 0 diff --git a/test/int/test_basics.py b/test/int/test_basics.py index 182476176cff13e9e4ed2c7b633adb4659ac1497..e870f779cd7d27e2482cc708e9126844a9d989b1 100644 --- a/test/int/test_basics.py +++ b/test/int/test_basics.py @@ -5,7 +5,6 @@ import pytest import signal from conftest import ( - xdist_worker_number, Instance, TarantoolError, ReturnError, @@ -13,23 +12,6 @@ from conftest import ( ) -def test_xdist_worker_number(): - assert xdist_worker_number("master") == 0 - assert xdist_worker_number("gw0") == 0 - assert xdist_worker_number("gw1") == 1 - assert xdist_worker_number("gw007") == 7 - assert xdist_worker_number("gw1024") == 1024 - - with pytest.raises(ValueError, match=r"gw"): - assert xdist_worker_number("gw") - - with pytest.raises(ValueError, match=r"xgw8x"): - assert xdist_worker_number("xgw8x") - - with pytest.raises(ValueError, match=r"wtf"): - assert xdist_worker_number("wtf") - - def test_call_normalization(instance: Instance): assert instance.call("tostring", 1) == "1" assert instance.call("dostring", "return") is None