def test_get_django_omit_exceptions_priority_1(settings: SettingsWrapper): caches_setting = copy.deepcopy(settings.CACHES) caches_setting["doesnotexist"]["OPTIONS"]["IGNORE_EXCEPTIONS"] = True settings.CACHES = caches_setting settings.DJANGO_REDIS_IGNORE_EXCEPTIONS = False cache = cast(RedisCache, caches["doesnotexist"]) assert cache._ignore_exceptions is True assert cache.get("key") is None
def test_get_django_omit_exceptions_priority_2(settings: SettingsWrapper): caches_setting = copy.deepcopy(settings.CACHES) caches_setting["doesnotexist"]["OPTIONS"]["IGNORE_EXCEPTIONS"] = False settings.CACHES = caches_setting settings.DJANGO_REDIS_IGNORE_EXCEPTIONS = True cache = cast(RedisCache, caches["doesnotexist"]) assert cache._ignore_exceptions is False with pytest.raises(ConnectionError): cache.get("key")
def ignore_exceptions_cache(settings: SettingsWrapper) -> RedisCache: caches_setting = copy.deepcopy(settings.CACHES) caches_setting["doesnotexist"]["OPTIONS"]["IGNORE_EXCEPTIONS"] = True settings.CACHES = caches_setting settings.DJANGO_REDIS_IGNORE_EXCEPTIONS = True return cast(RedisCache, caches["doesnotexist"])