forked from zjesko/mlops-iris
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathtest_app.py
More file actions
45 lines (40 loc) · 1.37 KB
/
test_app.py
File metadata and controls
45 lines (40 loc) · 1.37 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
from fastapi.testclient import TestClient
from main import app
def test_ping():
with TestClient(app) as client:
response = client.get("/ping")
assert response.status_code == 200
assert response.json() == {"ping":"pong"}
def test_pred_virginica():
payload = {
"sepal_length": 3,
"sepal_width": 5,
"petal_length": 3.2,
"petal_width": 4.4
}
with TestClient(app) as client:
response = client.post('/predict_flower', json=payload)
assert response.status_code == 200
assert response.json() == {'flower_class': "Iris Virginica"}
def test_pred_Versicolour():
payload = {
"sepal_length": 5.7,
"sepal_width": 2.9,
"petal_length": 4.2,
"petal_width": 1.3
}
with TestClient(app) as client:
response = client.post('/predict_flower', json=payload)
assert response.status_code == 200
assert response.json() == {'flower_class': "Iris Versicolour"}
def test_pred_Setosa():
payload = {
"sepal_length": 4.6,
"sepal_width": 3.1,
"petal_length": 1.5,
"petal_width": 0.2
}
with TestClient(app) as client:
response = client.post('/predict_flower', json=payload)
assert response.status_code == 200
assert response.json() == {'flower_class': "Iris Setosa"}