|
1 | 1 | import pytest |
2 | 2 | import json |
| 3 | +import pytest |
| 4 | +from faker import Faker |
3 | 5 |
|
4 | 6 | import azure.functions as func |
5 | 7 |
|
@@ -76,3 +78,43 @@ def test__delete_time_entries_azure_endpoint__returns_a_status_code_400__when_ti |
76 | 78 |
|
77 | 79 | assert response.status_code == 400 |
78 | 80 | assert response.get_body() == b'Invalid Format ID' |
| 81 | + |
| 82 | + |
| 83 | +def test__update_activity_azure_endpoint__returns_an_activity__when_found_an_activity_to_update( |
| 84 | + test_db, time_entry_factory, insert_time_entry, activity_factory, insert_activity |
| 85 | +): |
| 86 | + inserted_activity = insert_activity(activity_factory(), test_db) |
| 87 | + existent_time_entries = time_entry_factory(activity_id=inserted_activity.id, technologies="[jira,sql]") |
| 88 | + inserted_time_entries = insert_time_entry(existent_time_entries, test_db).__dict__ |
| 89 | + |
| 90 | + time_entry_body = {"description": Faker().sentence()} |
| 91 | + |
| 92 | + req = func.HttpRequest( |
| 93 | + method='PUT', |
| 94 | + body=json.dumps(time_entry_body).encode("utf-8"), |
| 95 | + url=TIME_ENTRY_URL, |
| 96 | + route_params={"id": inserted_time_entries["id"]}, |
| 97 | + ) |
| 98 | + |
| 99 | + response = azure_time_entries._update_time_entry.update_time_entry(req) |
| 100 | + activitiy_json_data = response.get_body().decode("utf-8") |
| 101 | + inserted_time_entries.update(time_entry_body) |
| 102 | + |
| 103 | + assert response.status_code == 200 |
| 104 | + assert activitiy_json_data == json.dumps(inserted_time_entries) |
| 105 | + |
| 106 | + |
| 107 | +def test__update_time_entries_azure_endpoint__returns_a_status_code_400__when_time_entry_recive_invalid_id(): |
| 108 | + time_entry_body = {"description": Faker().sentence()} |
| 109 | + |
| 110 | + req = func.HttpRequest( |
| 111 | + method="PUT", |
| 112 | + body=json.dumps(time_entry_body).encode("utf-8"), |
| 113 | + url=TIME_ENTRY_URL, |
| 114 | + route_params={"id": "invalid id"}, |
| 115 | + ) |
| 116 | + |
| 117 | + response = azure_time_entries._update_time_entry.update_time_entry(req) |
| 118 | + |
| 119 | + assert response.status_code == 400 |
| 120 | + assert response.get_body() == b'Invalid ID' |
0 commit comments