From 1d5aa7a4a5193403514f2385a841b4e640e1bc31 Mon Sep 17 00:00:00 2001 From: Sagar Vora <16315650+sagarvora@users.noreply.github.com> Date: Mon, 9 Jun 2025 21:30:21 +0530 Subject: [PATCH] fix: always restore old user --- frappe/tests/classes/context_managers.py | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/frappe/tests/classes/context_managers.py b/frappe/tests/classes/context_managers.py index 4ee9fd628e..d2a4afb661 100644 --- a/frappe/tests/classes/context_managers.py +++ b/frappe/tests/classes/context_managers.py @@ -46,12 +46,14 @@ def freeze_time(time_to_freeze: Any, is_utc: bool = False, *args: Any, **kwargs: @UnitTestCase.registerAs(staticmethod) @contextmanager -def set_user(user: str) -> None: +def set_user(user: str): """Temporarily: set the user.""" - old_user = frappe.session.user - frappe.set_user(user) - yield - frappe.set_user(old_user) + try: + old_user = frappe.session.user + frappe.set_user(user) + yield + finally: + frappe.set_user(old_user) @UnitTestCase.registerAs(staticmethod)