@@ -69,3 +69,32 @@ def test_delete__returns_none__when_no_time_entry_matching_its_id_is_found(
6969 result = dao .delete (Faker ().pyint ())
7070
7171 assert result is None
72+
73+
74+ def test_update__returns_an_time_entry_dto__when_found_one_time_entry_to_update (
75+ test_db , create_fake_dao , time_entry_factory , insert_activity , activity_factory
76+ ):
77+ dao = create_fake_dao (test_db )
78+ inserted_activity = insert_activity (activity_factory (), dao .db )
79+ existent_time_entries = time_entry_factory (activity_id = inserted_activity .id , technologies = "[jira,sql]" )
80+ inserted_time_entries = dao .create (existent_time_entries ).__dict__
81+ time_entry_id = inserted_time_entries ["id" ]
82+ inserted_time_entries .update ({"description" : "description updated" })
83+
84+ time_entry = dao .update (time_entry_id = time_entry_id , time_entry_data = inserted_time_entries )
85+
86+ assert time_entry .id == time_entry_id
87+ assert time_entry .description == "description updated"
88+
89+
90+ def test_update__returns_none__when_doesnt_found_one_time_entry_to_update (
91+ test_db , create_fake_dao , time_entry_factory , insert_activity , activity_factory
92+ ):
93+ dao = create_fake_dao (test_db )
94+ inserted_activity = insert_activity (activity_factory (), dao .db )
95+ existent_time_entries = time_entry_factory (activity_id = inserted_activity .id , technologies = "[jira,sql]" )
96+ inserted_time_entries = dao .create (existent_time_entries ).__dict__
97+
98+ time_entry = dao .update (0 , inserted_time_entries )
99+
100+ assert time_entry is None
0 commit comments