diff options
| author | Chris McDonough <chrism@agendaless.com> | 2009-05-27 23:22:26 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2009-05-27 23:22:26 +0000 |
| commit | cf8f30c329cd76757cfe0009b0fae9f4001b4d19 (patch) | |
| tree | c9ecc44e5b5d6143824a632a40e49d6061928075 | |
| parent | 3cba8e47394ba5c3459a752d76b1c75625aec33f (diff) | |
| download | pyramid-cf8f30c329cd76757cfe0009b0fae9f4001b4d19.tar.gz pyramid-cf8f30c329cd76757cfe0009b0fae9f4001b4d19.tar.bz2 pyramid-cf8f30c329cd76757cfe0009b0fae9f4001b4d19.zip | |
Coverage.
| -rw-r--r-- | repoze/bfg/registry.py | 9 | ||||
| -rw-r--r-- | repoze/bfg/tests/test_registry.py | 47 |
2 files changed, 52 insertions, 4 deletions
diff --git a/repoze/bfg/registry.py b/repoze/bfg/registry.py index 1162f4197..68c27dfa4 100644 --- a/repoze/bfg/registry.py +++ b/repoze/bfg/registry.py @@ -90,21 +90,22 @@ def getSiteManager(context=None): raise ComponentLookupError(*error.args) class FakeRegistryManager(object): + manager = manager # for unit tests def push(self, registry): - return manager.push({'registry':registry, 'request':None}) + return self.manager.push({'registry':registry, 'request':None}) set = push # b/c def pop(self): - result = manager.pop() + result = self.manager.pop() if result: return result['registry'] def get(self): - return manager.get()['registry'] + return self.manager.get()['registry'] def clear(self): - manager.clear() + self.manager.clear() # for use in scripts for backwards compatibility *only*! registry_manager = FakeRegistryManager() diff --git a/repoze/bfg/tests/test_registry.py b/repoze/bfg/tests/test_registry.py index d145e7700..5a4746c23 100644 --- a/repoze/bfg/tests/test_registry.py +++ b/repoze/bfg/tests/test_registry.py @@ -81,10 +81,57 @@ class GetSiteManagerTests(unittest.TestCase): def test_with_context(self): from zope.component.interfaces import ComponentLookupError self.assertRaises(ComponentLookupError, self._callFUT, object) + +class TestFakeRegistry(unittest.TestCase): + def _getTargetClass(self): + from repoze.bfg.registry import FakeRegistryManager + return FakeRegistryManager + + def _makeOne(self): + manager = self._getTargetClass()() + manager.manager = DummyThreadLocalManager({'registry':None, + 'request':None}) + return manager + + def test_push(self): + manager = self._makeOne() + result = manager.push(1) + self.assertEqual(manager.manager.pushed, {'registry':1, + 'request':None}) + + def test_pop(self): + manager = self._makeOne() + result = manager.pop() + self.assertEqual(manager.manager.popped, True) + self.assertEqual(result, None) + + def test_get(self): + manager = self._makeOne() + result = manager.get() + self.assertEqual(result, None) + + def test_clear(self): + manager = self._makeOne() + manager.clear() + self.assertEqual(manager.manager.cleared, True) + class DummyThreadLocalManager: def __init__(self, data): self.data = data + + def pop(self): + self.popped = True + return self.data + + def push(self, data): + self.pushed = data + + def get(self): + return self.data + + def clear(self): + self.cleared = True class DummyLock: def acquire(self): |
