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

13 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2024-09-09 00:02 +0000

1from unittest.mock import patch 1lghijk

2 

3from sqlmodel import create_engine 1lghijk

4 

5from ....conftest import get_testing_print_function 1lghijk

6 

7expected_calls = [ 1ghijk

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 "Hero:", 

40 { 

41 "age": None, 

42 "id": 1, 

43 "secret_name": "Dive Wilson", 

44 "team_id": 2, 

45 "name": "Deadpond", 

46 }, 

47 "Team:", 

48 {"id": 2, "name": "Z-Force", "headquarters": "Sister Margaret's Bar"}, 

49 ], 

50 [ 

51 "Hero:", 

52 { 

53 "age": 48, 

54 "id": 2, 

55 "secret_name": "Tommy Sharp", 

56 "team_id": 1, 

57 "name": "Rusty-Man", 

58 }, 

59 "Team:", 

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

61 ], 

62 [ 

63 "Hero:", 

64 { 

65 "age": None, 

66 "id": 3, 

67 "secret_name": "Pedro Parqueador", 

68 "team_id": None, 

69 "name": "Spider-Boy", 

70 }, 

71 "Team:", 

72 None, 

73 ], 

74] 

75 

76 

77def test_tutorial(clear_sqlmodel): 1lghijk

78 from docs_src.tutorial.connect.select import tutorial003 as mod 1abcdef

79 

80 mod.sqlite_url = "sqlite://" 1abcdef

81 mod.engine = create_engine(mod.sqlite_url) 1abcdef

82 calls = [] 1abcdef

83 

84 new_print = get_testing_print_function(calls) 1abcdef

85 

86 with patch("builtins.print", new=new_print): 1abcdef

87 mod.main() 1abcdef

88 assert calls == expected_calls 1abcdef