Skip to content

Commit cf3eaa0

Browse files
committed
refactors test
1 parent d98371d commit cf3eaa0

File tree

2 files changed

+42
-39
lines changed

2 files changed

+42
-39
lines changed

services/web/server/tests/unit/isolated/test_application_settings.py

Lines changed: 0 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,12 @@
88
import pytest
99
from aiohttp import web
1010
from models_library.utils.json_serialization import json_dumps
11-
from opentelemetry.instrumentation.aiohttp_server import (
12-
middleware as aiohttp_opentelemetry_middleware,
13-
)
1411
from pydantic import HttpUrl, parse_obj_as
1512
from pytest_simcore.helpers.monkeypatch_envs import (
1613
setenvs_from_dict,
1714
setenvs_from_envfile,
1815
)
1916
from pytest_simcore.helpers.typing_env import EnvVarsDict
20-
from simcore_service_webserver.application import create_application
2117
from simcore_service_webserver.application_settings import (
2218
APP_SETTINGS_KEY,
2319
ApplicationSettings,
@@ -255,38 +251,3 @@ def test_avoid_sensitive_info_in_public(app_settings: ApplicationSettings):
255251
assert not any("token" in key for key in app_settings.public_dict())
256252
assert not any("secret" in key for key in app_settings.public_dict())
257253
assert not any("private" in key for key in app_settings.public_dict())
258-
259-
260-
@pytest.fixture
261-
def tracing_settings_in(request):
262-
return request.param
263-
264-
265-
@pytest.mark.parametrize(
266-
"tracing_settings_in",
267-
[
268-
("http://opentelemetry-collector", 4318),
269-
],
270-
indirect=True,
271-
)
272-
async def test_middleware_restirctions_opentelemetry_is_second_middleware(
273-
mock_webserver_service_environment: EnvVarsDict,
274-
monkeypatch: pytest.MonkeyPatch,
275-
tracing_settings_in,
276-
):
277-
monkeypatch.setenv(
278-
"TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT", f"{tracing_settings_in[0]}"
279-
)
280-
monkeypatch.setenv(
281-
"TRACING_OPENTELEMETRY_COLLECTOR_PORT", f"{tracing_settings_in[1]}"
282-
)
283-
settings = ApplicationSettings.create_from_envs()
284-
assert settings.WEBSERVER_TRACING
285-
app = create_application()
286-
assert app.middlewares
287-
assert (
288-
app.middlewares[0].__middleware_name__
289-
== "servicelib.aiohttp.monitoring.monitor_simcore_service_webserver"
290-
)
291-
assert app.middlewares[1] == aiohttp_opentelemetry_middleware
292-
assert len(app.middlewares) > 1
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# pylint:disable=unused-argument
2+
# pylint:disable=redefined-outer-name
3+
# pylint:disable=no-name-in-module
4+
5+
6+
import pytest
7+
from opentelemetry.instrumentation.aiohttp_server import (
8+
middleware as aiohttp_opentelemetry_middleware,
9+
)
10+
from pytest_simcore.helpers.monkeypatch_envs import setenvs_from_dict
11+
from pytest_simcore.helpers.typing_env import EnvVarsDict
12+
from simcore_service_webserver.application import create_application
13+
from simcore_service_webserver.application_settings import ApplicationSettings
14+
15+
16+
@pytest.fixture
17+
def mock_webserver_service_environment(
18+
monkeypatch: pytest.MonkeyPatch, mock_webserver_service_environment: EnvVarsDict
19+
) -> EnvVarsDict:
20+
21+
return mock_webserver_service_environment | setenvs_from_dict(
22+
monkeypatch,
23+
{
24+
"TRACING_OPENTELEMETRY_COLLECTOR_ENDPOINT": "http://opentelemetry-collector",
25+
"TRACING_OPENTELEMETRY_COLLECTOR_PORT": "4318",
26+
},
27+
)
28+
29+
30+
def test_middleware_restrictions_opentelemetry_is_second_middleware(
31+
mock_webserver_service_environment: EnvVarsDict,
32+
):
33+
settings = ApplicationSettings.create_from_envs()
34+
assert settings.WEBSERVER_TRACING
35+
36+
app = create_application()
37+
assert app.middlewares
38+
assert (
39+
app.middlewares[0].__middleware_name__
40+
== "servicelib.aiohttp.monitoring.monitor_simcore_service_webserver"
41+
)
42+
assert app.middlewares[1] == aiohttp_opentelemetry_middleware

0 commit comments

Comments
 (0)