Coverage for app/tests/scripts/test_backend_pre_start.py: 88%
16 statements
« prev ^ index » next coverage.py v7.6.1, created at 2026-03-24 11:40 +0000
« prev ^ index » next coverage.py v7.6.1, created at 2026-03-24 11:40 +0000
1from unittest.mock import MagicMock, patch
3from sqlmodel import select
5from app.backend_pre_start import init, logger
8def test_init_successful_connection() -> None:
9 engine_mock = MagicMock()
11 session_mock = MagicMock()
12 exec_mock = MagicMock(return_value=True)
13 session_mock.configure_mock(**{"exec.return_value": exec_mock})
15 with (
16 patch("sqlmodel.Session", return_value=session_mock),
17 patch.object(logger, "info"),
18 patch.object(logger, "error"),
19 patch.object(logger, "warn"),
20 ):
21 try:
22 init(engine_mock)
23 connection_successful = True
24 except Exception:
25 connection_successful = False
27 assert (
28 connection_successful
29 ), "The database connection should be successful and not raise an exception."
31 assert session_mock.exec.called_once_with(
32 select(1)
33 ), "The session should execute a select statement once."