Coverage for tests/test_tutorial/test_connect/test_select/test_tutorial005_py310.py: 100%

14 statements  

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

1from unittest.mock import patch 1ijklmnopqr

2 

3from sqlmodel import create_engine 1ijklmnopqr

4 

5from ....conftest import get_testing_print_function, needs_py310 1ijklmnopqr

6 

7expected_calls = [ 1ijklmnopqr

8 [ 

9 "Created hero:", 

10 { 

11 "age": None, 

12 "id": 1, 

13 "secret_name": "Dive Wilson", 

14 "team_id": 2, 

15 "name": "Deadpond", 

16 }, 

17 ], 

18 [ 

19 "Created hero:", 

20 { 

21 "age": 48, 

22 "id": 2, 

23 "secret_name": "Tommy Sharp", 

24 "team_id": 1, 

25 "name": "Rusty-Man", 

26 }, 

27 ], 

28 [ 

29 "Created hero:", 

30 { 

31 "age": None, 

32 "id": 3, 

33 "secret_name": "Pedro Parqueador", 

34 "team_id": None, 

35 "name": "Spider-Boy", 

36 }, 

37 ], 

38 [ 

39 "Preventer Hero:", 

40 { 

41 "age": 48, 

42 "id": 2, 

43 "secret_name": "Tommy Sharp", 

44 "team_id": 1, 

45 "name": "Rusty-Man", 

46 }, 

47 "Team:", 

48 {"id": 1, "name": "Preventers", "headquarters": "Sharp Tower"}, 

49 ], 

50] 

51 

52 

53@needs_py310 1ijklmnopqr

54def test_tutorial(): 1ijklmnopqr

55 from docs_src.tutorial.connect.select import tutorial005_py310 as mod 1abcdefgh

56 

57 mod.sqlite_url = "sqlite://" 1abcdefgh

58 mod.engine = create_engine(mod.sqlite_url) 1abcdefgh

59 calls = [] 1abcdefgh

60 

61 new_print = get_testing_print_function(calls) 1abcdefgh

62 

63 with patch("builtins.print", new=new_print): 1abcdefgh

64 mod.main() 1abcdefgh

65 assert calls == expected_calls 1abcdefgh