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

24 statements  

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

1from unittest.mock import patch 1labcde

2 

3from sqlmodel import create_engine 1labcde

4 

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

6 

7expected_calls = [ 1abcde

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 

64 

65@needs_py310 1labcde

66def test_tutorial001(clear_sqlmodel): 1abcde

67 from docs_src.tutorial.connect.select import tutorial001_py310 as mod 1fgh

68 

69 mod.sqlite_url = "sqlite://" 1fgh

70 mod.engine = create_engine(mod.sqlite_url) 1fgh

71 calls = [] 1fgh

72 

73 new_print = get_testing_print_function(calls) 1fgh

74 

75 with patch("builtins.print", new=new_print): 1fgh

76 mod.main() 1fgh

77 assert calls == expected_calls 1fgh

78 

79 

80@needs_py310 1labcde

81def test_tutorial002(clear_sqlmodel): 1abcde

82 from docs_src.tutorial.connect.select import tutorial002_py310 as mod 1ijk

83 

84 mod.sqlite_url = "sqlite://" 1ijk

85 mod.engine = create_engine(mod.sqlite_url) 1ijk

86 calls = [] 1ijk

87 

88 new_print = get_testing_print_function(calls) 1ijk

89 

90 with patch("builtins.print", new=new_print): 1ijk

91 mod.main() 1ijk

92 assert calls == expected_calls 1ijk