From f679f65aa5df29c9d0320d77178ba16966bef9b8 Mon Sep 17 00:00:00 2001 From: Shariq Ansari Date: Thu, 7 Dec 2023 13:42:24 +0530 Subject: [PATCH] test: unit test to check arabic filename export --- frappe/tests/test_api.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/frappe/tests/test_api.py b/frappe/tests/test_api.py index a5c76e2698..8d3065982b 100644 --- a/frappe/tests/test_api.py +++ b/frappe/tests/test_api.py @@ -419,6 +419,19 @@ class TestResponse(FrappeAPITestCase): self.assertIn("text/csv", response.headers["content-type"]) self.assertGreater(cint(response.headers["content-length"]), 0) + from frappe.desk.utils import provide_binary_file + from frappe.utils.response import build_response + + filename = "دفتر الأستاذ العام" + encoded_filename = filename.encode("utf-8").decode("unicode-escape", "ignore") + ".xlsx" + provide_binary_file(filename, "xlsx", "content") + + response = build_response("binary") + self.assertEqual(response.status_code, 200) + self.assertEqual(response.headers["content-type"], "application/octet-stream") + self.assertGreater(cint(response.headers["content-length"]), 0) + self.assertEqual(response.headers["content-disposition"], f'filename="{encoded_filename}"') + def generate_admin_keys(): from frappe.core.doctype.user.user import generate_keys