From 5c60ed9a9ac4d07e49640dfc2223c56d64fe29a8 Mon Sep 17 00:00:00 2001 From: Georgy Moshkin <gmoshkin@picodata.io> Date: Mon, 5 Feb 2024 12:51:05 +0300 Subject: [PATCH] test: fix test_proc_runtime_info --- test/conftest.py | 15 ++++++++++++--- test/int/test_basics.py | 12 ++++++++++++ test/int/test_http_server.py | 11 +---------- 3 files changed, 25 insertions(+), 13 deletions(-) diff --git a/test/conftest.py b/test/conftest.py index bac5c48520..ed04de163d 100644 --- a/test/conftest.py +++ b/test/conftest.py @@ -1567,10 +1567,19 @@ def cluster( @pytest.fixture -def instance(cluster: Cluster) -> Generator[Instance, None, None]: +def instance(cluster: Cluster, pytestconfig) -> Generator[Instance, None, None]: """Returns a deployed instance forming a single-node cluster.""" - cluster.deploy(instance_count=1) - yield cluster[0] + instance = cluster.add_instance(wait_online=False) + + has_webui = bool(pytestconfig.getoption("--with-webui")) + if has_webui: + instance.env[ + "PICODATA_HTTP_LISTEN" + ] = f"{cluster.base_host}:{cluster.base_port+80}" + + instance.start() + instance.wait_online() + yield instance @pytest.fixture diff --git a/test/int/test_basics.py b/test/int/test_basics.py index 76e3ad3633..f05280e3f6 100644 --- a/test/int/test_basics.py +++ b/test/int/test_basics.py @@ -412,6 +412,7 @@ def test_proc_raft_info(instance: Instance): ) +@pytest.mark.webui def test_proc_runtime_info(instance: Instance): info = instance.call(".proc_runtime_info") @@ -420,6 +421,12 @@ def test_proc_runtime_info(instance: Instance): # add a bootstrap entry. info["raft"]["applied"] = 69 + version_info = instance.call(".proc_version_info") + + host_port = instance.env["PICODATA_HTTP_LISTEN"] + host, port = host_port.split(":") + port = int(port) # type: ignore + assert info == dict( raft=dict( id=1, @@ -432,6 +439,11 @@ def test_proc_runtime_info(instance: Instance): main_loop_status="idle", governor_loop_status="idle", ), + http=dict( + host=host, + port=port, + ), + version_info=version_info, ) diff --git a/test/int/test_http_server.py b/test/int/test_http_server.py index 80c7662c21..10e7a20147 100644 --- a/test/int/test_http_server.py +++ b/test/int/test_http_server.py @@ -1,18 +1,9 @@ -from conftest import Cluster, Instance +from conftest import Instance from urllib.request import urlopen import pytest import json -@pytest.fixture -def instance(cluster: Cluster): - instance = cluster.add_instance(wait_online=False) - instance.env["PICODATA_HTTP_LISTEN"] = f"{cluster.base_host}:{cluster.base_port+80}" - instance.start() - instance.wait_online() - return instance - - def test_http_routes(instance: Instance): instance.eval( """ -- GitLab