From 05ca48fcf286f535c7b17bf883b904159b05bf96 Mon Sep 17 00:00:00 2001 From: sambhavnoobcoder Date: Thu, 23 Jan 2025 22:02:38 +0530 Subject: [PATCH] add test fn for clearing import cache --- tests/utils/test_import_utils.py | 29 ++++++++++++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/tests/utils/test_import_utils.py b/tests/utils/test_import_utils.py index 6a11467d9e73..e26a9c3812b2 100644 --- a/tests/utils/test_import_utils.py +++ b/tests/utils/test_import_utils.py @@ -1,3 +1,30 @@ import sys import pytest -from transformers.utils.import_utils import clear_import_cache, _LazyModule \ No newline at end of file +from transformers.utils.import_utils import clear_import_cache, _LazyModule + +def test_clear_import_cache(): + # Import some transformers modules + from transformers import AutoModel, AutoTokenizer + + # Get initial module count + initial_modules = { + name: mod for name, mod in sys.modules.items() + if name.startswith('transformers.') + } + + # Verify we have some modules loaded + assert len(initial_modules) > 0 + + # Clear cache + clear_import_cache() + + # Check modules were removed + remaining_modules = { + name: mod for name, mod in sys.modules.items() + if name.startswith('transformers.') + } + assert len(remaining_modules) < len(initial_modules) + + # Verify we can reimport + from transformers import AutoModel, AutoTokenizer + assert 'transformers.models.auto.modeling_auto' in sys.modules \ No newline at end of file