Skip to content

Commit 2a96b8c

Browse files
committed
fix: TT-357 Azure endpoints test correction
1 parent c0c2b28 commit 2a96b8c

File tree

3 files changed

+59
-25
lines changed

3 files changed

+59
-25
lines changed

V2/tests/api/azure/activity_azure_endpoints_test.py

Lines changed: 57 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,58 +1,92 @@
1-
from time_entries._application._activities import (
2-
_get_activities,
3-
_delete_activity,
4-
)
5-
import azure.functions as func
6-
import json
1+
import pytest
72
import typing
3+
import json
4+
import uuid
85

96

7+
import azure.functions as func
8+
9+
import time_entries._application._activities as azure_activities
10+
import time_entries._domain as domain
11+
import time_entries._infrastructure as infrastructure
12+
13+
@pytest.fixture(name='create_fake_database')
14+
def _create_fake_database() -> domain.ActivitiesDao:
15+
db_fake = infrastructure.DB('sqlite:///:memory:')
16+
demo_data = [
17+
{
18+
'id': uuid.UUID('b4327ba6-9f96-49ee-a9ac-3c1edf525172'),
19+
'name': 'Activity Demo create',
20+
'description': 'test demo create an new activity',
21+
'deleted': 'b4327ba6-9f96-49ee-a9ac-3c1edf525172',
22+
'status': 'active',
23+
'tenant_id': 'cc925a5d-9644-4a4f-8d99-0bee49aadd05',
24+
},
25+
{
26+
'id': uuid.UUID('c61a4a49-3364-49a3-a7f7-0c5f2d15072b'),
27+
'name': 'Activity Demo create',
28+
'description': 'test demo create an new activity',
29+
'deleted': 'b4327ba6-9f96-49ee-a9ac-3c1edf525172',
30+
'status': 'active',
31+
'tenant_id': 'cc925a5d-9644-4a4f-8d99-0bee49aadd05',
32+
},
33+
]
34+
35+
query = db_fake.activity.insert()
36+
db_fake.connection.execute(query, demo_data)
37+
return db_fake, demo_data
38+
1039
def test__activity_azure_endpoint__returns_all_activities(
11-
create_temp_activities,
40+
create_fake_database,
1241
):
13-
activities_json, tmp_directory = create_temp_activities
14-
_get_activities.JSON_PATH = tmp_directory
42+
database, activity_data = create_fake_database
43+
azure_activities._get_activities.DATABASE = database
1544
req = func.HttpRequest(method='GET', body=None, url='/api/activities')
1645

17-
response = _get_activities.get_activities(req)
46+
response = azure_activities._get_activities.get_activities(req)
1847
activities_json_data = response.get_body().decode("utf-8")
19-
48+
49+
for activity in activity_data:
50+
activity["id"] = activity["id"].hex
51+
2052
assert response.status_code == 200
21-
assert activities_json_data == json.dumps(activities_json)
53+
assert activities_json_data == json.dumps(activity_data)
2254

2355

2456
def test__activity_azure_endpoint__returns_an_activity__when_activity_matches_its_id(
25-
create_temp_activities,
57+
create_fake_database,
2658
):
27-
activities_json, tmp_directory = create_temp_activities
28-
_get_activities.JSON_PATH = tmp_directory
59+
database, activity_data = create_fake_database
60+
azure_activities._get_activities.DATABASE = database
2961
req = func.HttpRequest(
3062
method='GET',
3163
body=None,
3264
url='/api/activities/',
33-
route_params={"id": activities_json[0]['id']},
65+
route_params={"id": str(activity_data[0]['id'])},
3466
)
3567

36-
response = _get_activities.get_activities(req)
68+
response = azure_activities._get_activities.get_activities(req)
3769
activitiy_json_data = response.get_body().decode("utf-8")
3870

71+
activity_data[0]["id"] = activity_data[0]["id"].hex
72+
3973
assert response.status_code == 200
40-
assert activitiy_json_data == json.dumps(activities_json[0])
74+
assert activitiy_json_data == json.dumps(activity_data[0])
4175

4276

4377
def test__activity_azure_endpoint__returns_an_activity_with_inactive_status__when_an_activity_matching_its_id_is_found(
44-
create_temp_activities,
78+
create_fake_database,
4579
):
46-
activities_json, tmp_directory = create_temp_activities
47-
_delete_activity.JSON_PATH = tmp_directory
80+
database, activity_data = create_fake_database
81+
azure_activities._delete_activity.DATABASE = database
4882
req = func.HttpRequest(
4983
method='DELETE',
5084
body=None,
5185
url='/api/activities/',
52-
route_params={"id": activities_json[0]['id']},
86+
route_params={"id": str(activity_data[0]['id'])},
5387
)
5488

55-
response = _delete_activity.delete_activity(req)
89+
response = azure_activities._delete_activity.delete_activity(req)
5690
activity_json_data = json.loads(response.get_body().decode("utf-8"))
5791

5892
assert response.status_code == 200

V2/time_entries/_application/_activities/_delete_activity.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,4 +35,4 @@ def _delete(activity_id: str) -> str:
3535
def _create_activity_service(path: str):
3636
activity_json = ActivitiesJsonDao(path)
3737
activity_sql = ActivitiesSQLDao(DATABASE)
38-
return ActivityService(activity_json)
38+
return ActivityService(activity_sql)

V2/time_entries/_application/_activities/_get_activities.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -54,4 +54,4 @@ def _get_all() -> str:
5454
def _create_activity_service(path: str):
5555
activity_json = ActivitiesJsonDao(path)
5656
activity_sql = ActivitiesSQLDao(DATABASE)
57-
return ActivityService(activity_json)
57+
return ActivityService(activity_sql)

0 commit comments

Comments
 (0)