<?xml version="1.0" encoding="utf-8"?><testsuites name="pytest tests"><testsuite name="pytest" errors="0" failures="0" skipped="0" tests="22" time="0.788" timestamp="2026-08-16T22:48:00.463820+09:00" hostname="cube-B850M-AORUS-ELITE-WIFI6E-ICE"><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_pdf_document_cached" time="0.082" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_txt_content_injected" time="0.043" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_md_content_injected" time="0.040" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_log_content_injected" time="0.047" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_mid_sized_zip_under_32mb_is_cached" time="0.041" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_zip_document_cached" time="0.042" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_large_txt_cached_not_injected" time="0.046" /><testcase classname="tests.gateway.test_discord_document_handling.TestIncomingDocumentHandling" name="test_multiple_text_files_both_injected" time="0.083" /><testcase classname="tests.gateway.test_discord_document_handling.TestAllowAnyAttachment" name="test_unknown_type_cached_when_flag_on" time="0.042" /><testcase classname="tests.gateway.test_discord_document_handling.TestAllowAnyAttachment" name="test_unknown_type_no_content_type_becomes_octet_stream" time="0.042" /><testcase classname="tests.gateway.test_discord_document_handling.TestAllowAnyAttachment" name="test_max_attachment_bytes_zero_means_unlimited" time="0.045" /><testcase classname="tests.gateway.test_discord_document_handling.TestAllowAnyAttachment" name="test_allowlisted_doc_unchanged_when_flag_on" time="0.044" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_external_media_download_rejects_oversized_content_length" time="0.054" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_external_media_download_rejects_oversized_stream" time="0.007" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_external_media_download_rejects_unsafe_redirect" time="0.005" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_external_media_download_rejects_non_image_content_type" time="0.005" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_send_image_failure_log_redacts_signed_url" time="0.005" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_send_image_failure_response_does_not_expose_signed_url_query" time="0.005" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_send_image_failure_response_does_not_expose_signed_url_fragment" time="0.005" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_send_image_failure_response_preserves_caption" time="0.005" /><testcase classname="tests.gateway.test_matrix.TestMatrixImageOnlyMediaNormalization" name="test_send_image_failure_log_still_redacts_signed_url" time="0.005" /><testcase classname="tests.gateway.test_runtime_footer" name="test_format_footer_skips_missing_context_length" time="0.004" /></testsuite></testsuites>