"""
MockParser — returns a ParseResult wrapping an empty DoclingDocument. For tests
that exercise the Parser seam without hitting the docling pipeline.
"""

from pathlib import Path

from docling_core.types.doc.document import DoclingDocument

from quber.core.parsers.base import Parser
from quber.core.parsers.result import ParseResult


class MockParser(Parser):
    def __init__(self, result: ParseResult | None = None) -> None:
        self._result = result or ParseResult(document=DoclingDocument(name="mock"))

    def parse(self, source: Path) -> ParseResult:
        _ = source
        return self._result
