from __future__ import annotations from types import SimpleNamespace from bot_digitador.core.application import select_document_type class FakeWrapper: def __init__(self): self.keys: list[str] = [] def type_keys(self, value: str, **_kwargs) -> None: self.keys.append(value) def test_select_document_type_uses_home_and_exact_c_sequence(): wrapper = FakeWrapper() window = SimpleNamespace(wrapper_object=lambda: wrapper) clicks: list[tuple[int, int]] = [] logs: list[str] = [] ok = select_document_type( window, "CC", log=logs.append, sleep=lambda _seconds: None, click=lambda _window, x, y: clicks.append((x, y)), ) assert ok is True assert clicks == [(729, 279)] assert wrapper.keys == ["{HOME}", "c", "c", "c", "{ENTER}"] def test_select_document_type_rejects_unknown_type(): assert select_document_type(SimpleNamespace(), "XX", log=lambda _message: None) is False