Spaces:
Sleeping
Sleeping
| from formpilot.engine import analyze_form, detect_fields, parse_user_facts | |
| def test_detect_fields_from_underlined_form() -> None: | |
| form = """ | |
| Full name: ____________ | |
| Email: ________________ | |
| Emergency contact: ____ | |
| """ | |
| assert detect_fields(form) == ["Full name", "Email", "Emergency contact"] | |
| def test_parse_user_facts_key_values_and_free_text() -> None: | |
| facts = parse_user_facts( | |
| """ | |
| Name: Jordan Lee | |
| jordan.lee@example.com | |
| Phone: 555-0137 | |
| """ | |
| ) | |
| assert facts["name"] == "Jordan Lee" | |
| assert facts["email"] == "jordan.lee@example.com" | |
| assert facts["phone"] == "555-0137" | |
| def test_analyze_form_marks_missing_fields() -> None: | |
| payload = analyze_form("Full name: ____\nEmail: ____\nSignature: ____", "Full name: Jordan Lee") | |
| rows = {row["field"]: row for row in payload["rows"]} | |
| assert rows["Full name"]["status"] == "ready" | |
| assert rows["Email"]["status"] == "missing" | |
| assert rows["Signature"]["status"] == "missing" | |
| assert payload["questions"] | |