From 5ec39a70a98f1c4222f7b73d40b2953aa9118504 Mon Sep 17 00:00:00 2001 From: Devin AI <158243242+devin-ai-integration[bot]@users.noreply.github.com> Date: Sun, 7 Dec 2025 16:44:08 +0000 Subject: [PATCH] fix: properly test OpenMemory import error scenario MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: João --- .../tests/storage/test_openmemory_storage.py | 25 ++++++++++++++----- 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/lib/crewai/tests/storage/test_openmemory_storage.py b/lib/crewai/tests/storage/test_openmemory_storage.py index 90e849859..eeb5e754f 100644 --- a/lib/crewai/tests/storage/test_openmemory_storage.py +++ b/lib/crewai/tests/storage/test_openmemory_storage.py @@ -204,12 +204,25 @@ def test_openmemory_storage_different_memory_types(): def test_openmemory_import_error(): - with patch.dict("sys.modules", {"openmemory": None}): - with patch( - "crewai.memory.storage.openmemory_storage.OpenMemory", - side_effect=ImportError("No module named 'openmemory'"), - ): - pass + import sys + import importlib + + original_modules = sys.modules.copy() + sys.modules["openmemory"] = None # type: ignore[assignment] + + try: + if "crewai.memory.storage.openmemory_storage" in sys.modules: + del sys.modules["crewai.memory.storage.openmemory_storage"] + + with pytest.raises(ImportError, match="OpenMemory is not installed"): + from crewai.memory.storage import openmemory_storage + + importlib.reload(openmemory_storage) + openmemory_storage.OpenMemoryStorage( + type="external", config={"path": "/tmp/test.sqlite"} + ) + finally: + sys.modules.update(original_modules) def test_external_memory_openmemory_provider():