Coverage for tests/test_tutorial/test_relationship_attributes/test_delete_records_relationship/test_tutorial001_py310.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 1idefgh

2 

3from sqlmodel import create_engine 1idefgh

4 

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

6 

7 

8@needs_py310 1idefgh

9def test_tutorial(clear_sqlmodel): 1defgh

10 from docs_src.tutorial.relationship_attributes.cascade_delete_relationships import ( 1abc

11 tutorial001_py310 as mod, 

12 ) 

13 

14 mod.sqlite_url = "sqlite://" 1abc

15 mod.engine = create_engine(mod.sqlite_url) 1abc

16 calls = [] 1abc

17 

18 new_print = get_testing_print_function(calls) 1abc

19 

20 with patch("builtins.print", new=new_print): 1abc

21 mod.main() 1abc

22 assert calls == [ 1abc

23 [ 

24 "Created hero:", 

25 { 

26 "name": "Deadpond", 

27 "secret_name": "Dive Wilson", 

28 "team_id": 1, 

29 "id": 1, 

30 "age": None, 

31 }, 

32 ], 

33 [ 

34 "Created hero:", 

35 { 

36 "name": "Rusty-Man", 

37 "secret_name": "Tommy Sharp", 

38 "team_id": 2, 

39 "id": 2, 

40 "age": 48, 

41 }, 

42 ], 

43 [ 

44 "Created hero:", 

45 { 

46 "name": "Spider-Boy", 

47 "secret_name": "Pedro Parqueador", 

48 "team_id": None, 

49 "id": 3, 

50 "age": None, 

51 }, 

52 ], 

53 [ 

54 "Updated hero:", 

55 { 

56 "name": "Spider-Boy", 

57 "secret_name": "Pedro Parqueador", 

58 "team_id": 2, 

59 "id": 3, 

60 "age": None, 

61 }, 

62 ], 

63 [ 

64 "Team Wakaland:", 

65 {"name": "Wakaland", "id": 3, "headquarters": "Wakaland Capital City"}, 

66 ], 

67 [ 

68 "Deleted team:", 

69 {"name": "Wakaland", "id": 3, "headquarters": "Wakaland Capital City"}, 

70 ], 

71 ["Black Lion not found:", None], 

72 ["Princess Sure-E not found:", None], 

73 ]