Skip to content

Commit 9502abe

Browse files
committed
Working v1 using FastAPI and passing tests.
1 parent 1117c22 commit 9502abe

File tree

4 files changed

+23
-23
lines changed

4 files changed

+23
-23
lines changed

app/router/v1/confirmed.py

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# from flask import jsonify
2+
import json
23

34
# from ...routes import api_v1 as api
45
from ...services.location.jhu import get_category
@@ -7,7 +8,6 @@
78

89
@router.get("/confirmed")
910
def confirmed():
10-
11-
return {
12-
get_category("confirmed")
13-
}
11+
confirmed = get_category("confirmed")
12+
13+
return confirmed

app/router/v1/deaths.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@
77

88
@router.get("/deaths")
99
def deaths():
10-
return {
11-
get_category("deaths")
12-
}
10+
deaths = get_category("deaths")
11+
12+
return deaths

app/router/v1/recovered.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,6 @@
77

88
@router.get("/recovered")
99
def recovered():
10-
return {
11-
get_category("recovered")
12-
}
10+
recovered = get_category("recovered")
11+
12+
return recovered

tests/test_routes.py

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
import pytest
77
from fastapi.testclient import TestClient
88

9-
import app
10-
from app import services
9+
# import app
10+
# from app import services
1111
from app.main import APP
1212

1313
from .test_jhu import DATETIME_STRING, mocked_requests_get, mocked_strptime_isoformat
@@ -23,10 +23,10 @@ class FlaskRoutesTest(unittest.TestCase):
2323
"""
2424

2525
# load app context only once.
26-
app = app.create_app()
26+
# app = app.create_app()
2727

2828
def setUp(self):
29-
self.client = FlaskRoutesTest.app.test_client()
29+
# self.client = FlaskRoutesTest.app.test_client()
3030
self.asgi_client = TestClient(APP)
3131
self.date = DATETIME_STRING
3232

@@ -48,36 +48,36 @@ def test_v1_confirmed(self, mock_request_get, mock_datetime):
4848
mock_datetime.strptime.side_effect = mocked_strptime_isoformat
4949
state = "confirmed"
5050
expected_json_output = self.read_file_v1(state=state)
51-
return_data = self.client.get("/{}".format(state)).data.decode()
51+
return_data = self.asgi_client.get("/{}".format(state)).json()
5252

53-
assert return_data == expected_json_output
53+
assert return_data == json.loads(expected_json_output)
5454

5555
def test_v1_deaths(self, mock_request_get, mock_datetime):
5656
mock_datetime.utcnow.return_value.isoformat.return_value = self.date
5757
mock_datetime.strptime.side_effect = mocked_strptime_isoformat
5858
state = "deaths"
5959
expected_json_output = self.read_file_v1(state=state)
60-
return_data = self.client.get("/{}".format(state)).data.decode()
60+
return_data = self.asgi_client.get("/{}".format(state)).json()
6161

62-
assert return_data == expected_json_output
62+
assert return_data == json.loads(expected_json_output)
6363

6464
def test_v1_recovered(self, mock_request_get, mock_datetime):
6565
mock_datetime.utcnow.return_value.isoformat.return_value = self.date
6666
mock_datetime.strptime.side_effect = mocked_strptime_isoformat
6767
state = "recovered"
6868
expected_json_output = self.read_file_v1(state=state)
69-
return_data = self.client.get("/{}".format(state)).data.decode()
69+
return_data = self.asgi_client.get("/{}".format(state)).json()
7070

71-
assert return_data == expected_json_output
71+
assert return_data == json.loads(expected_json_output)
7272

7373
def test_v1_all(self, mock_request_get, mock_datetime):
7474
mock_datetime.utcnow.return_value.isoformat.return_value = self.date
7575
mock_datetime.strptime.side_effect = mocked_strptime_isoformat
7676
state = "all"
7777
expected_json_output = self.read_file_v1(state=state)
78-
return_data = self.client.get("/{}".format(state)).data.decode()
79-
# print(return_data)
80-
assert return_data == expected_json_output
78+
return_data = self.asgi_client.get("/{}".format(state)).json()
79+
80+
assert return_data == json.loads(expected_json_output)
8181

8282
def test_v2_latest(self, mock_request_get, mock_datetime):
8383
mock_datetime.utcnow.return_value.isoformat.return_value = DATETIME_STRING

0 commit comments

Comments
 (0)