Coverage for tests/test_tutorial/test_select/test_tutorial001_tutorial002.py: 100%

26 statements  

« prev     ^ index     » next       coverage.py v7.11.0, created at 2025-10-27 00:03 +0000

1from typing import Any, Dict, List, Union 1uvwxyzABCD

2from unittest.mock import patch 1uvwxyzABCD

3 

4from sqlmodel import create_engine 1uvwxyzABCD

5 

6from ...conftest import get_testing_print_function 1uvwxyzABCD

7 

8 

9def check_calls(calls: List[List[Union[str, Dict[str, Any]]]]): 1uvwxyzABCD

10 assert calls[0][0] == { 1abcdefghijklmnopqrst

11 "name": "Deadpond", 

12 "secret_name": "Dive Wilson", 

13 "age": None, 

14 "id": 1, 

15 } 

16 assert calls[1][0] == { 1abcdefghijklmnopqrst

17 "name": "Spider-Boy", 

18 "secret_name": "Pedro Parqueador", 

19 "age": None, 

20 "id": 2, 

21 } 

22 assert calls[2][0] == { 1abcdefghijklmnopqrst

23 "name": "Rusty-Man", 

24 "secret_name": "Tommy Sharp", 

25 "age": 48, 

26 "id": 3, 

27 } 

28 

29 

30def test_tutorial_001(clear_sqlmodel): 1uvwxyzABCD

31 from docs_src.tutorial.select import tutorial001 as mod 1acegikmoqs

32 

33 mod.sqlite_url = "sqlite://" 1acegikmoqs

34 mod.engine = create_engine(mod.sqlite_url) 1acegikmoqs

35 calls = [] 1acegikmoqs

36 

37 new_print = get_testing_print_function(calls) 1acegikmoqs

38 

39 with patch("builtins.print", new=new_print): 1acegikmoqs

40 mod.main() 1acegikmoqs

41 check_calls(calls) 1acegikmoqs

42 

43 

44def test_tutorial_002(clear_sqlmodel): 1uvwxyzABCD

45 from docs_src.tutorial.select import tutorial002 as mod 1bdfhjlnprt

46 

47 mod.sqlite_url = "sqlite://" 1bdfhjlnprt

48 mod.engine = create_engine(mod.sqlite_url) 1bdfhjlnprt

49 calls = [] 1bdfhjlnprt

50 

51 new_print = get_testing_print_function(calls) 1bdfhjlnprt

52 

53 with patch("builtins.print", new=new_print): 1bdfhjlnprt

54 mod.main() 1bdfhjlnprt

55 check_calls(calls) 1bdfhjlnprt