def module(): from unittest.mock import patch import pytest from pydantic.generics import get_caller_frame_info with pytest.raises(RuntimeError, match='This function must be used inside another function'): with patch('sys._getframe', side_effect=ValueError('getframe_exc')): get_caller_frame_info()
def test_get_caller_frame_info_when_sys_getframe_undefined(): from pydantic.generics import get_caller_frame_info getframe = sys._getframe del sys._getframe try: assert get_caller_frame_info() == (None, False) finally: # just to make sure we always setting original attribute back sys._getframe = getframe
def third_function(): assert get_caller_frame_info() == (__name__, False)
def function(): assert get_caller_frame_info() == (__name__, True) another_function()