backend with --emulate flag

This commit is contained in:
Georg-Stahn
2024-01-11 15:34:01 +01:00
parent b679382622
commit b01b01a959
27 changed files with 699 additions and 538 deletions

View File

@@ -11,10 +11,8 @@ from fastapi.testclient import TestClient
from openapi_client import ApiClient, Configuration
from ports import PortFunction
from clan_cli.webui.app import app
import emulate_fastapi
import config
from clan_cli.webui.app import app
@pytest.fixture(scope="session")
@@ -55,98 +53,6 @@ def server_url(unused_tcp_port: PortFunction) -> Generator[str, None, None]:
yield url
proc.terminate()
# Pytest fixture to run the server in a separate process
# emulating c1
@pytest.fixture(scope="session")
def server_c1() -> Generator[str, None, None]:
port = port_client_base
host = host
# server
proc = Process(
target=uvicorn.run,
args=(app,),
kwargs={"host": host, "port": port, "log_level": "info"},
daemon=True,
)
proc.start()
url = f"http://{host}:{port}"
res = get_health(url=url + "/health")
if res is None:
raise Exception(f"Couldn't reach {url} after starting server")
yield url
proc.terminate()
# Pytest fixture to run the server in a separate process
# emulating c2
@pytest.fixture(scope="session")
def server_c2() -> Generator[str, None, None]:
port = port_client_base+1
host = host
# server
proc = Process(
target=uvicorn.run,
args=(app,),
kwargs={"host": host, "port": port, "log_level": "info"},
daemon=True,
)
proc.start()
url = f"http://{host}:{port}"
res = get_health(url=url + "/health")
if res is None:
raise Exception(f"Couldn't reach {url} after starting server")
yield url
proc.terminate()
proc.terminate()
# Pytest fixture to run the server in a separate process
# emulating ap
@pytest.fixture(scope="session")
def server_ap() -> Generator[str, None, None]:
port = port_ap
host = host
# server
proc = Process(
target=uvicorn.run,
args=(app,),
kwargs={"host": host, "port": port, "log_level": "info"},
daemon=True,
)
proc.start()
url = f"http://{host}:{port}"
res = get_health(url=url + "/health")
if res is None:
raise Exception(f"Couldn't reach {url} after starting server")
yield url
proc.terminate()
# Pytest fixture to run the server in a separate process
# emulating dlg
@pytest.fixture(scope="session")
def server_dlg() -> Generator[str, None, None]:
port = port_dlg
host = host
# server
proc = Process(
target=uvicorn.run,
args=(app,),
kwargs={"host": host, "port": port, "log_level": "info"},
daemon=True,
)
proc.start()
url = f"http://{host}:{port}"
res = get_health(url=url + "/health")
if res is None:
raise Exception(f"Couldn't reach {url} after starting server")
yield url
proc.terminate()
@pytest.fixture(scope="session")
def api_client(server_url: str) -> Generator[ApiClient, None, None]: