1
- from unittest .mock import MagicMock , patch
1
+ from unittest .mock import MagicMock , Mock , patch
2
2
3
3
from sqlmodel import select
4
4
5
+ import app .backend_pre_start
5
6
from app .backend_pre_start import init , logger
6
7
7
8
8
9
def test_init_successful_connection () -> None :
9
10
engine_mock = MagicMock ()
10
11
11
12
session_mock = MagicMock ()
12
- exec_mock = MagicMock (return_value = True )
13
- session_mock .configure_mock (** {"exec.return_value" : exec_mock })
13
+ session_mock .__enter__ .return_value = session_mock
14
+ session_mock .exec = Mock ()
15
+
16
+ select1 = select (1 )
14
17
15
18
with (
16
- patch ("sqlmodel.Session" , return_value = session_mock ),
19
+ patch ("app.backend_pre_start.Session" , return_value = session_mock ),
20
+ patch ("app.backend_pre_start.select" , return_value = select1 ),
17
21
patch .object (logger , "info" ),
18
22
patch .object (logger , "error" ),
19
23
patch .object (logger , "warn" ),
@@ -28,6 +32,4 @@ def test_init_successful_connection() -> None:
28
32
connection_successful
29
33
), "The database connection should be successful and not raise an exception."
30
34
31
- assert session_mock .exec .called_once_with (
32
- select (1 )
33
- ), "The session should execute a select statement once."
35
+ session_mock .exec .assert_called_once_with (select1 )
0 commit comments