Skip to content

Commit 0df2b97

Browse files
authored
in test_settings, add clickhouse_server fixture (#1028)
* in test_settings, add clickhouse_server fixture * delay and decrease probe frequency of is_clickhouse_running to reduce logspam * remove docker_ip and docker_services included by clickhouse_server
1 parent 5763024 commit 0df2b97

File tree

2 files changed

+9
-5
lines changed

2 files changed

+9
-5
lines changed

ooniapi/services/oonimeasurements/tests/conftest.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,8 @@ def maybe_download_fixtures():
4040

4141

4242
def is_clickhouse_running(url):
43+
# using ClickhouseClient as probe spams WARN messages with logger in clickhouse_driver
44+
time.sleep(2)
4345
try:
4446
with ClickhouseClient.from_url(url) as client:
4547
client.execute("SELECT 1")
@@ -53,7 +55,7 @@ def clickhouse_server(maybe_download_fixtures, docker_ip, docker_services):
5355
port = docker_services.port_for("clickhouse", 9000)
5456
url = "clickhouse://test:test@{}:{}".format(docker_ip, port)
5557
docker_services.wait_until_responsive(
56-
timeout=30.0, pause=0.1, check=lambda: is_clickhouse_running(url)
58+
timeout=30.0, pause=1.0, check=lambda: is_clickhouse_running(url)
5759
)
5860
yield url
5961

ooniapi/services/ooniprobe/tests/conftest.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
import pytest
55
import shutil
66
import os
7+
import time
78
from urllib.request import urlopen
89

910
from fastapi.testclient import TestClient
@@ -107,13 +108,12 @@ def client(clickhouse_server, test_settings, geoip_db_dir):
107108

108109

109110
@pytest.fixture
110-
def test_settings(alembic_migration, docker_ip, docker_services, geoip_db_dir, fastpath_server):
111-
port = docker_services.port_for("clickhouse", 9000)
111+
def test_settings(alembic_migration, geoip_db_dir, clickhouse_server, fastpath_server):
112112
yield make_override_get_settings(
113113
postgresql_url=alembic_migration,
114114
jwt_encryption_key=JWT_ENCRYPTION_KEY,
115115
prometheus_metrics_password="super_secure",
116-
clickhouse_url=f"clickhouse://test:test@{docker_ip}:{port}",
116+
clickhouse_url=clickhouse_server,
117117
geoip_db_dir=geoip_db_dir,
118118
collector_id="1",
119119
fastpath_url=fastpath_server
@@ -126,6 +126,8 @@ def jwt_encryption_key():
126126

127127

128128
def is_clickhouse_running(url):
129+
# using ClickhouseClient as probe spams WARN messages with logger in clickhouse_driver
130+
time.sleep(2)
129131
try:
130132
with ClickhouseClient.from_url(url) as client:
131133
client.execute("SELECT 1")
@@ -140,7 +142,7 @@ def clickhouse_server(docker_ip, docker_services):
140142
# See password in docker compose
141143
url = "clickhouse://test:test@{}:{}".format(docker_ip, port)
142144
docker_services.wait_until_responsive(
143-
timeout=30.0, pause=0.1, check=lambda: is_clickhouse_running(url)
145+
timeout=30.0, pause=1.0, check=lambda: is_clickhouse_running(url)
144146
)
145147
yield url
146148

0 commit comments

Comments
 (0)