from __future__ import annotations import httpx from orc_renaming.webdav import WebDAVClient def test_list_pdfs_ignores_subfolders_and_other_files(config) -> None: xml = """ /remote.php/dav/files/test/Scanner/Eingang/ /remote.php/dav/files/test/Scanner/Eingang/Scan%20A.PDF 123 "etag-1" /remote.php/dav/files/test/Scanner/Eingang/notiz.txt /remote.php/dav/files/test/Scanner/Eingang/umbenannt/ """ def handler(request: httpx.Request) -> httpx.Response: assert request.method == "PROPFIND" assert request.headers["Depth"] == "1" return httpx.Response(207, text=xml) client = WebDAVClient(config.nextcloud) client.client.close() client.client = httpx.Client(transport=httpx.MockTransport(handler)) files = client.list_pdfs("/Scanner/Eingang") client.close() assert len(files) == 1 assert files[0].name == "Scan A.PDF" assert files[0].size == 123 assert files[0].path == "/Scanner/Eingang/Scan A.PDF"