Skip to content

Commit

Permalink
Merge pull request #1127 from rezakarbasi/master
Browse files Browse the repository at this point in the history
feat: an api test added. It evaluates inserting base64 encoded image
  • Loading branch information
serengil authored Mar 19, 2024
2 parents de2f08f + 24f7e11 commit 5d49679
Showing 1 changed file with 29 additions and 0 deletions.
29 changes: 29 additions & 0 deletions tests/test_api.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
import unittest
from deepface.commons.logger import Logger
from deepface.api.src.app import create_app
import base64


logger = Logger("tests/test_api.py")
Expand Down Expand Up @@ -77,6 +78,34 @@ def test_represent(self):

logger.info("✅ representation api test is done")

def test_represent_encoded(self):
image_path = "dataset/img1.jpg"
with open(image_path, "rb") as image_file:
encoded_string = "data:image/jpeg;base64," + \
base64.b64encode(image_file.read()).decode("utf8")

data = {
"model_name": "Facenet",
"detector_backend": "mtcnn",
"img": encoded_string
}

response = self.app.post("/represent", json=data)
assert response.status_code == 200
result = response.json
logger.debug(result)
assert result.get("results") is not None
assert isinstance(result["results"], list) is True
assert len(result["results"]) > 0
for i in result["results"]:
assert i.get("embedding") is not None
assert isinstance(i.get("embedding"), list) is True
assert len(i.get("embedding")) == 128
assert i.get("face_confidence") is not None
assert i.get("facial_area") is not None

logger.info("✅ representation api test is done")

def test_analyze(self):
data = {
"img": "dataset/img1.jpg",
Expand Down

0 comments on commit 5d49679

Please sign in to comment.