def test_new(self, cache_type): kwargs = {"a": 1, "b": 2} cache_class = Cache.get_scheme_class(cache_type) with patch("pycached.{}.__init__".format( cache_class.__name__)) as init: cache = Cache(cache_type, **kwargs) assert isinstance(cache, cache_class) init.assert_called_once_with(**kwargs)
def test_from_url_returns_cache_from_scheme(self, scheme): assert isinstance(Cache.from_url("{}://".format(scheme)), Cache.get_scheme_class(scheme))
def test_get_scheme_class_invalid(self): with pytest.raises(InvalidCacheType): Cache.get_scheme_class("http")
def test_get_scheme_class(self, scheme): assert Cache.get_scheme_class(scheme) == CACHE_CACHES[scheme]
def test_new_defaults_to_memory(self): assert isinstance(Cache(), Cache.get_scheme_class(Cache.MEMORY))