"""Tests for printer form template wiring — inline driver upload + OOB select.""" from fastapi.testclient import TestClient def test_printer_form_has_inline_driver_upload(client: TestClient) -> None: """GET /printers renders printer form with: - Driver must have id=\"printer-form-driver-select\" " "for HTMX OOB swap to work" ) # Inline upload form posts caller=printer_form sentinel assert 'name="caller"' in html, "Inline upload form missing name=\"caller\" field" assert 'value="printer_form"' in html, ( "Inline upload form missing value=\"printer_form\" sentinel" ) # Inline upload form targets /drivers/upload assert 'hx-post="/drivers/upload"' in html, ( "Inline upload form missing hx-post=\"/drivers/upload\"" ) # CRITICAL: hx-post="/drivers/upload" must NOT be nested inside the printer form. # Split on the printer form boundary and verify the upload endpoint is not inside it. # The printer form always starts with hx-post="/printers" and ends at its . printer_form_start = html.find('hx-post="/printers"') assert printer_form_start != -1, "Printer form hx-post not found — template changed?" # Find the first after the printer form opening tag printer_form_end = html.find("", printer_form_start) assert printer_form_end != -1, "Printer form closing not found" printer_form_chunk = html[printer_form_start:printer_form_end] assert 'hx-post="/drivers/upload"' not in printer_form_chunk, ( "hx-post=\"/drivers/upload\" must NOT be nested inside the printer
— " "HTML forbids nested forms and browsers silently ignore the inner one" )