-
-
Notifications
You must be signed in to change notification settings - Fork 8k
Closed
Labels
Description
related also to #24.
At first, the tests/api/* are not using fixture server_api
from app.tests.utils.utils import get_server_api
def test_celery_worker_test(superuser_token_headers):
server_api = get_server_api()
shall be
def test_celery_worker_test(server_api, superuser_token_headers):
this would allow to improve pytest tests this way (as idea, further improvements possible):
from multiprocessing import Process
import pytest
import uvicorn
def run_server():
uvicorn.run("app.main:app", port=8123)
@pytest.fixture(scope="module")
def server_api(server):
proc = Process(target=run_server, args=(), daemon=True)
proc.start()
# maybe some sleep here to wait for server starts
yield ('localhost', 8123)
proc.kill() # Cleanup after test