summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgoschtl <none@none>2012-04-10 17:15:55 +0200
committergoschtl <none@none>2012-04-10 17:15:55 +0200
commit8005ac5110cdea1c02a54834a6151c174e652c09 (patch)
treecd1ebb5ab592342def1a2f6c0e774b0d6adf16c2
parent9b8ef8109b44ce33c12a71785794d330535ba470 (diff)
downloaddogpile-cache-8005ac5110cdea1c02a54834a6151c174e652c09.tar.gz
added a test for configure_from_config
-rw-r--r--dogpile/cache/api.py2
-rw-r--r--dogpile/cache/region.py6
-rw-r--r--tests/test_region.py14
3 files changed, 17 insertions, 5 deletions
diff --git a/dogpile/cache/api.py b/dogpile/cache/api.py
index b1f1139..6e3610a 100644
--- a/dogpile/cache/api.py
+++ b/dogpile/cache/api.py
@@ -71,7 +71,7 @@ class CacheBackend(object):
dict(
(key[prefix_len:], config_dict[key])
for key in config_dict
- if key.startwith(prefix)
+ if key.startswith(prefix)
)
)
diff --git a/dogpile/cache/region.py b/dogpile/cache/region.py
index 8e5267f..d496bc1 100644
--- a/dogpile/cache/region.py
+++ b/dogpile/cache/region.py
@@ -173,11 +173,11 @@ class CacheRegion(object):
"""
return self.configure(
- config_dict["%s.backend" % prefix],
+ config_dict["%sbackend" % prefix],
expiration_time = config_dict.get(
- "%s.expiration_time" % prefix, None),
+ "%sexpiration_time" % prefix, None),
_config_argument_dict=config_dict,
- _config_prefix="%s.arguments" % prefix
+ _config_prefix="%sarguments." % prefix
)
@memoized_property
diff --git a/tests/test_region.py b/tests/test_region.py
index 872d5b3..85fefd5 100644
--- a/tests/test_region.py
+++ b/tests/test_region.py
@@ -1,6 +1,6 @@
from unittest import TestCase
from dogpile.cache.api import CacheBackend, CachedValue, NO_VALUE
-from dogpile.cache import register_backend, CacheRegion
+from dogpile.cache import make_region, register_backend, CacheRegion
from tests import eq_, assert_raises_message
import time
import itertools
@@ -40,6 +40,18 @@ class RegionTest(TestCase):
reg.configure(backend, **config_args)
return reg
+ def test_instance_from_dict(self):
+ my_conf = {
+ 'cache.example.backend': 'mock',
+ 'cache.example.expiration_time': 600,
+ 'cache.example.arguments.url': '127.0.0.1'
+ }
+ my_region = make_region()
+ my_region.configure_from_config(my_conf, 'cache.example.')
+ eq_(my_region.expiration_time, 600)
+ assert isinstance(my_region.backend, MockBackend) is True
+ eq_(my_region.backend.arguments, {'url': '127.0.0.1'})
+
def test_key_mangler_argument(self):
reg = self._region(init_args={"key_mangler":key_mangler})
assert reg.key_mangler is key_mangler