Files
blog.pyaqa.ru/tests/unit/test_unit_app_run.py
Sergey Vanyushkin 66ce5ae746 init update (#1)
Co-authored-by: Sergey Vanyushkin <pi3c@yandex.ru>
Co-committed-by: Sergey Vanyushkin <pi3c@yandex.ru>
2026-04-25 17:47:07 +00:00

34 lines
707 B
Python

from contextlib import asynccontextmanager
from unittest.mock import patch
import pytest
from fastapi import FastAPI
from app.main import app_factory, lifespan, main
@pytest.mark.asyncio
async def test_lifespan():
app = FastAPI()
assert isinstance(lifespan, asynccontextmanager(lifespan).__class__)
async with lifespan(app):
pass
def test_app_factory():
app = app_factory()
assert isinstance(app, FastAPI)
assert app.router.lifespan_context == lifespan
@patch("app.main.uvicorn.run")
def test_main(mock_uvicorn_run):
main()
mock_uvicorn_run.assert_called_once_with(
app_factory,
factory=True,
host="0.0.0.0",
port=8000,
)