Public Access
docs: thin phase 4 complete; refresh ORIENTATION + HANDOFF
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
"""End-to-end: ingredient + recipe + match all wired together."""
|
||||
import pytest
|
||||
|
||||
pytestmark = pytest.mark.requires_postgres
|
||||
|
||||
|
||||
def _admin() -> dict:
|
||||
return {"Authorization": "Bearer test-admin-token"}
|
||||
|
||||
|
||||
def test_seed_data_present_and_resolvable(client):
|
||||
r = client.get("/api/recipes")
|
||||
assert r.status_code == 200
|
||||
recipes = r.json()
|
||||
assert len(recipes) >= 30, f"expected >=30 seeded recipes, got {len(recipes)}"
|
||||
|
||||
|
||||
def test_resolve_against_seeded_ingredients(client):
|
||||
r = client.post(
|
||||
"/api/admin/recipes/resolve-ingredient",
|
||||
json={"text": "1 lb chicken thighs"},
|
||||
headers=_admin(),
|
||||
)
|
||||
assert r.status_code == 200
|
||||
candidates = r.json()["candidates"]
|
||||
assert candidates, "expected at least one candidate"
|
||||
assert "chicken" in candidates[0]["name"].lower()
|
||||
|
||||
|
||||
def test_match_job_runs_against_seeded_data(db_session):
|
||||
from app.services.matcher import run_match_job
|
||||
|
||||
written = run_match_job(db_session)
|
||||
assert written >= 0
|
||||
Reference in New Issue
Block a user