44import json
55
66
7- def test__get_by_id__returns_an_activity_dto__when_find_activity_that_matches_its_id (
7+ OPEN_FILE = 'builtins.open'
8+
9+
10+ def test_get_by_id__return_activity_dto__when_find_activity_that_matches_its_id (
811 mocker ,
912):
1013 activities_json_dao = ActivitiesJsonDao ('non-important-path' )
@@ -18,12 +21,10 @@ def test__get_by_id__returns_an_activity_dto__when_find_activity_that_matches_it
1821 "status" : "test_status" ,
1922 }
2023 ]
21- activity_dto = ActivityDto (** activities [0 ])
24+ read_data = json .dumps (activities )
25+ activity_dto = ActivityDto (** activities .pop ())
2226
23- activities_dao_mock = mocker .patch .object (
24- activities_json_dao , '_ActivitiesJsonDao__get_activities_from_file'
25- )
26- activities_dao_mock .return_value = activities
27+ mocker .patch (OPEN_FILE , mocker .mock_open (read_data = read_data ))
2728 result = activities_json_dao .get_by_id (activity_dto .id )
2829
2930 assert result == activity_dto
@@ -33,12 +34,10 @@ def test__get_by_id__return_httpstatus_not_found__when_no_activity_matches_its_i
3334 mocker ,
3435):
3536 activities_json_dao = ActivitiesJsonDao ('non-important-path' )
36- activity = []
37+ activities = []
38+ read_data = json .dumps (activities )
3739
38- activities_dao_mock = mocker .patch .object (
39- activities_json_dao , '_ActivitiesJsonDao__get_activities_from_file'
40- )
41- activities_dao_mock .return_value = activity
40+ mocker .patch (OPEN_FILE , mocker .mock_open (read_data = read_data ))
4241 result = activities_json_dao .get_by_id ('non-important-id' )
4342
4443 assert result == HTTPStatus .NOT_FOUND
@@ -60,11 +59,9 @@ def test_get_all__return_list_of_activity_dto__when_find_one_or_more_activities(
6059 activity_dto = ActivityDto (** activity )
6160 list_activities_dto = [activity_dto ] * number_of_activities
6261 activities = [activity ] * number_of_activities
62+ read_data = json .dumps (activities )
6363
64- activities_dao_mock = mocker .patch .object (
65- activities_json_dao , '_ActivitiesJsonDao__get_activities_from_file'
66- )
67- activities_dao_mock .return_value = activities
64+ mocker .patch (OPEN_FILE , mocker .mock_open (read_data = read_data ))
6865 result = activities_json_dao .get_all ()
6966
7067 assert result == list_activities_dto
@@ -73,64 +70,9 @@ def test_get_all__return_list_of_activity_dto__when_find_one_or_more_activities(
7370def test_get_all__return_empty_list__when_doesnt_found_any_activities (mocker ):
7471 activities_json_dao = ActivitiesJsonDao ('non-important-path' )
7572 activities = []
76-
77- activities_dao_mock = mocker .patch .object (
78- activities_json_dao , '_ActivitiesJsonDao__get_activities_from_file'
79- )
80- activities_dao_mock .return_value = activities
81- result = activities_json_dao .get_all ()
82-
83- assert result == activities
84-
85-
86- def test__get_activities_from_file__returns_a_list_of_activities__when_find_activities_on_a_json_file (
87- mocker ,
88- ):
89- activities_json_dao = ActivitiesJsonDao ('non-important-path' )
90- activities = [
91- {
92- "name" : "test_name" ,
93- "description" : "test_description" ,
94- "tenant_id" : "test_tenant_id" ,
95- "id" : "test_id" ,
96- "deleted" : "test_deleted" ,
97- "status" : "test_status" ,
98- }
99- ]
10073 read_data = json .dumps (activities )
10174
102- mocker .patch ('builtins.open' , mocker .mock_open (read_data = read_data ))
103- result = activities_json_dao ._ActivitiesJsonDao__get_activities_from_file ()
75+ mocker .patch (OPEN_FILE , mocker .mock_open (read_data = read_data ))
76+ result = activities_json_dao .get_all ()
10477
10578 assert result == activities
106-
107-
108- def test__get_activities_from_file__returns_an_empty_list__when_doesnt_find_any_file (
109- mocker ,
110- ):
111- activities_json_dao = ActivitiesJsonDao ('non-important-path' )
112-
113- result = activities_json_dao ._ActivitiesJsonDao__get_activities_from_file ()
114-
115- assert result == []
116-
117-
118- def test__create_activity_dto__returns_an_activity_dto__when_input_is_an_activity_dict (
119- mocker ,
120- ):
121- activities_json_dao = ActivitiesJsonDao ('non-important-path' )
122- activity = {
123- "name" : "test_name" ,
124- "description" : "test_description" ,
125- "tenant_id" : "test_tenant_id" ,
126- "id" : "test_id" ,
127- "deleted" : "test_deleted" ,
128- "status" : "test_status" ,
129- }
130- activity_dto = ActivityDto (** activity )
131-
132- result = activities_json_dao ._ActivitiesJsonDao__create_activity_dto (
133- activity
134- )
135-
136- assert result == activity_dto
0 commit comments