From 5d2f9f1ca84a966b39830a5c043223ec878d69aa Mon Sep 17 00:00:00 2001 From: CREDO23 Date: Tue, 21 Jul 2026 19:59:01 +0200 Subject: [PATCH] test: connector document is OKF concept --- .../tests/unit/services/okf/test_ingestion.py | 31 +++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 surfsense_backend/tests/unit/services/okf/test_ingestion.py diff --git a/surfsense_backend/tests/unit/services/okf/test_ingestion.py b/surfsense_backend/tests/unit/services/okf/test_ingestion.py new file mode 100644 index 000000000..e7c49bc33 --- /dev/null +++ b/surfsense_backend/tests/unit/services/okf/test_ingestion.py @@ -0,0 +1,31 @@ +"""A ConnectorDocument (the indexing write door) must serialize to a valid OKF +concept. Per-``DocumentType`` conformance lives in ``test_conformance.py``. +""" + +from app.db import Document, DocumentType +from app.indexing_pipeline.connector_document import ConnectorDocument +from app.services.okf import document_to_concept, is_conformant_concept + + +def _document_from(connector_doc: ConnectorDocument) -> Document: + """Mirror how prepare_for_indexing builds a Document from a ConnectorDocument.""" + return Document( + title=connector_doc.title, + document_type=connector_doc.document_type, + source_markdown=connector_doc.source_markdown, + document_metadata=connector_doc.metadata, + ) + + +def test_minimal_connector_document_yields_conformant_concept() -> None: + connector_doc = ConnectorDocument( + title="Bare", + source_markdown="just a body", + unique_id="u1", + document_type=DocumentType.FILE, + workspace_id=1, + created_by_id="user-1", + ) + doc = _document_from(connector_doc) + concept = document_to_concept(doc, body=doc.source_markdown) + assert is_conformant_concept(concept)