Skip to content

Commit 3641b1e

Browse files
committed
fix: TT-401 change in activity database instance and refactor test
1 parent 5f107f3 commit 3641b1e

File tree

9 files changed

+17
-26
lines changed

9 files changed

+17
-26
lines changed

V2/Makefile

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ install:
1717

1818
.PHONY: test
1919
test: export ENVIRONMENT = test
20-
test: export TEST_DB_CONNECTION = sqlite:///:memory:
20+
test: export TEST_DB_CONNECTION = sqlite:///file:memory?mode=memory&cache=shared&uri=true
2121
test:
2222
@echo "=========================================Lint with flake8========================================="
2323
flake8 . --show-source --statistics

V2/tests/api/azure/activity_azure_endpoints_test.py

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,6 @@ def test__activity_azure_endpoint__returns_all_activities(
1717
insert_activity(existent_activities[1], test_db).__dict__
1818
]
1919

20-
azure_activities._get_activities.DATABASE = test_db
21-
2220
req = func.HttpRequest(method='GET', body=None, url=ACTIVITY_URL)
2321
response = azure_activities._get_activities.get_activities(req)
2422
activities_json_data = response.get_body().decode("utf-8")
@@ -33,7 +31,6 @@ def test__activity_azure_endpoint__returns_an_activity__when_activity_matches_it
3331
existent_activity = activity_factory()
3432
inserted_activity = insert_activity(existent_activity, test_db).__dict__
3533

36-
azure_activities._get_activities.DATABASE = test_db
3734
req = func.HttpRequest(
3835
method='GET',
3936
body=None,
@@ -54,7 +51,6 @@ def test__activity_azure_endpoint__returns_an_activity_with_inactive_status__whe
5451
existent_activity = activity_factory()
5552
inserted_activity = insert_activity(existent_activity, test_db).__dict__
5653

57-
azure_activities._delete_activity.DATABASE = test_db
5854
req = func.HttpRequest(
5955
method='DELETE',
6056
body=None,
@@ -76,7 +72,6 @@ def test__update_activity_azure_endpoint__returns_an_activity__when_found_an_act
7672
existent_activity = activity_factory()
7773
inserted_activity = insert_activity(existent_activity, test_db).__dict__
7874

79-
azure_activities._update_activity.DATABASE = test_db
8075
activity_body = {"description": Faker().sentence()}
8176
req = func.HttpRequest(
8277
method='PUT',

V2/tests/integration/daos/activities_sql_dao_test.py renamed to V2/tests/integration/daos/activities_dao_test.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,15 +9,15 @@
99

1010
@pytest.fixture(name='create_fake_dao')
1111
def _create_fake_dao() -> domain.ActivitiesDao:
12-
db_fake = DB('sqlite:///:memory:')
12+
db_fake = DB()
1313
dao = infrastructure.ActivitiesSQLDao(db_fake)
1414
return dao
1515

1616

1717
@pytest.fixture(name='clean_database', autouse=True)
1818
def _clean_database():
1919
yield
20-
db_fake = DB('sqlite:///:memory:')
20+
db_fake = DB()
2121
dao = infrastructure.ActivitiesSQLDao(db_fake)
2222
query = dao.activity.delete()
2323
dao.db.get_session().execute(query)

V2/time_tracker/activities/_application/_activities/_create_activity.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,10 @@
88
from ... import _infrastructure
99
from time_tracker._infrastructure import DB
1010

11-
DATABASE = DB()
12-
1311

1412
def create_activity(req: func.HttpRequest) -> func.HttpResponse:
15-
activity_dao = _infrastructure.ActivitiesSQLDao(DATABASE)
13+
database = DB()
14+
activity_dao = _infrastructure.ActivitiesSQLDao(database)
1615
activity_service = _domain.ActivityService(activity_dao)
1716
use_case = _domain._use_cases.CreateActivityUseCase(activity_service)
1817

V2/time_tracker/activities/_application/_activities/_delete_activity.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,6 @@
77
from ... import _infrastructure
88
from time_tracker._infrastructure import DB
99

10-
DATABASE = DB()
11-
1210

1311
def delete_activity(req: func.HttpRequest) -> func.HttpResponse:
1412
logging.info(
@@ -29,8 +27,9 @@ def delete_activity(req: func.HttpRequest) -> func.HttpResponse:
2927

3028

3129
def _delete(activity_id: int) -> str:
30+
database = DB()
3231
activity_use_case = _domain._use_cases.DeleteActivityUseCase(
33-
_create_activity_service(DATABASE)
32+
_create_activity_service(database)
3433
)
3534
activity = activity_use_case.delete_activity(activity_id)
3635
return json.dumps(activity.__dict__) if activity else b'Not found'

V2/time_tracker/activities/_application/_activities/_get_activities.py

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,9 @@
77
from ... import _infrastructure
88
from time_tracker._infrastructure import DB
99

10-
DATABASE = DB()
11-
1210

1311
def get_activities(req: func.HttpRequest) -> func.HttpResponse:
12+
database = DB()
1413
logging.info(
1514
'Python HTTP trigger function processed a request to get an activity.'
1615
)
@@ -19,11 +18,11 @@ def get_activities(req: func.HttpRequest) -> func.HttpResponse:
1918

2019
try:
2120
if activity_id:
22-
response = _get_by_id(int(activity_id))
21+
response = _get_by_id(int(activity_id), database)
2322
if response == b'Not Found':
2423
status_code = 404
2524
else:
26-
response = _get_all()
25+
response = _get_all(database)
2726

2827
return func.HttpResponse(
2928
body=response, status_code=status_code, mimetype="application/json"
@@ -34,18 +33,18 @@ def get_activities(req: func.HttpRequest) -> func.HttpResponse:
3433
)
3534

3635

37-
def _get_by_id(activity_id: int) -> str:
36+
def _get_by_id(activity_id: int, database: DB) -> str:
3837
activity_use_case = _domain._use_cases.GetActivityUseCase(
39-
_create_activity_service(DATABASE)
38+
_create_activity_service(database)
4039
)
4140
activity = activity_use_case.get_activity_by_id(activity_id)
4241

4342
return json.dumps(activity.__dict__) if activity else b'Not Found'
4443

4544

46-
def _get_all() -> str:
45+
def _get_all(database: DB) -> str:
4746
activities_use_case = _domain._use_cases.GetActivitiesUseCase(
48-
_create_activity_service(DATABASE)
47+
_create_activity_service(database)
4948
)
5049
return json.dumps(
5150
[

V2/time_tracker/activities/_application/_activities/_update_activity.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,6 @@
88
from ... import _infrastructure
99
from time_tracker._infrastructure import DB
1010

11-
DATABASE = DB()
12-
1311

1412
def update_activity(req: func.HttpRequest) -> func.HttpResponse:
1513
logging.info(
@@ -37,8 +35,9 @@ def update_activity(req: func.HttpRequest) -> func.HttpResponse:
3735

3836

3937
def _update(activity_id: int, activity_data: dict) -> str:
38+
database = DB()
4039
activity_use_case = _domain._use_cases.UpdateActivityUseCase(
41-
_create_activity_service(DATABASE)
40+
_create_activity_service(database)
4241
)
4342
activity = activity_use_case.update_activity(
4443
activity_id, activity_data.get("name"),
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
# flake8: noqa
2-
from ._activities_sql_dao import ActivitiesSQLDao
2+
from ._activities_dao import ActivitiesSQLDao

0 commit comments

Comments
 (0)