Add vergunningzoeker tests (Red phase)
This commit is contained in:
parent
9b8c0b7687
commit
6ff996b707
|
|
@ -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