Add vergunningzoeker tests (Red phase)
This commit is contained in:
parent
b83684cc1f
commit
40f24ddec0
|
|
@ -0,0 +1,15 @@
|
||||||
|
import os
|
||||||
|
os.environ["DATABASE_URL"] = "sqlite:///test.db"
|
||||||
|
|
||||||
|
import pytest
|
||||||
|
from app import create_app
|
||||||
|
from app.database import Base, engine
|
||||||
|
|
||||||
|
@pytest.fixture
|
||||||
|
def client():
|
||||||
|
app = create_app()
|
||||||
|
app.config["TESTING"] = True
|
||||||
|
Base.metadata.create_all(bind=engine)
|
||||||
|
with app.test_client() as client:
|
||||||
|
yield client
|
||||||
|
Base.metadata.drop_all(bind=engine)
|
||||||
|
|
@ -0,0 +1,32 @@
|
||||||
|
import io
|
||||||
|
import pytest
|
||||||
|
from unittest.mock import patch
|
||||||
|
|
||||||
|
def test_upload_permit(client):
|
||||||
|
"""File upload should trigger OCR + classification via SDK."""
|
||||||
|
with patch("app.routes.druppie") as mock_druppie:
|
||||||
|
mock_druppie.call.side_effect = [
|
||||||
|
{"text": "Vergunning K-2019-0042. Aanvrager: J. de Vries. Lozing oppervlaktewater."},
|
||||||
|
{"answer": "watervergunning_lozing"},
|
||||||
|
]
|
||||||
|
data = {
|
||||||
|
"file": (io.BytesIO(b"fake image data"), "scan.jpg"),
|
||||||
|
"permit_number": "K-2019-0042",
|
||||||
|
"applicant_name": "J. de Vries",
|
||||||
|
}
|
||||||
|
resp = client.post("/api/permits/upload",
|
||||||
|
data=data, content_type="multipart/form-data")
|
||||||
|
assert resp.status_code == 200
|
||||||
|
result = resp.get_json()
|
||||||
|
assert "extracted_text" in result
|
||||||
|
assert mock_druppie.call.call_count == 2
|
||||||
|
|
||||||
|
def test_search_permits(client):
|
||||||
|
"""Search should return matching permits."""
|
||||||
|
resp = client.get("/api/permits/search?q=test")
|
||||||
|
assert resp.status_code == 200
|
||||||
|
|
||||||
|
def test_list_permits(client):
|
||||||
|
"""List should return all permits."""
|
||||||
|
resp = client.get("/api/permits")
|
||||||
|
assert resp.status_code == 200
|
||||||
Loading…
Reference in New Issue