diff options
| author | Michael Merickel <michael@merickel.org> | 2018-11-05 21:58:03 -0600 |
|---|---|---|
| committer | Michael Merickel <michael@merickel.org> | 2018-11-06 20:05:11 -0600 |
| commit | 4b9da6af118b4566da4b9a36eb41a047cd587a76 (patch) | |
| tree | 4e5b0cb7e31dbb6e5ac070bfe1f1b9f03e2ec36e | |
| parent | 229137d3461cb901b7145974d5294564f7ab5135 (diff) | |
| download | pyramid-4b9da6af118b4566da4b9a36eb41a047cd587a76.tar.gz pyramid-4b9da6af118b4566da4b9a36eb41a047cd587a76.tar.bz2 pyramid-4b9da6af118b4566da4b9a36eb41a047cd587a76.zip | |
call fix_registry so that queryAdapterOrSelf is available
fixes #3416
| -rw-r--r-- | src/pyramid/testing.py | 1 | ||||
| -rw-r--r-- | tests/test_testing.py | 14 |
2 files changed, 15 insertions, 0 deletions
diff --git a/src/pyramid/testing.py b/src/pyramid/testing.py index ea86f5852..f700b5a4e 100644 --- a/src/pyramid/testing.py +++ b/src/pyramid/testing.py @@ -509,6 +509,7 @@ def setUp( ) if settings is None: settings = {} + config._fix_registry() if getattr(registry, 'settings', None) is None: config._set_settings(settings) if hasattr(registry, 'registerUtility'): diff --git a/tests/test_testing.py b/tests/test_testing.py index 16c94ee19..5e11c2487 100644 --- a/tests/test_testing.py +++ b/tests/test_testing.py @@ -434,6 +434,20 @@ class Test_setUp(unittest.TestCase): config = self._callFUT(hook_zca=False, settings=dict(a=1)) self.assertEqual(config.registry.settings['a'], 1) + def test_it_with_unpatched_registry(self): + from zope.interface.registry import Components + + class DummyRegistry(Components, dict): + pass + + dummy_registry = DummyRegistry() + config = self._callFUT( + registry=dummy_registry, hook_zca=False, settings=dict(a=1) + ) + self.assertEqual(config.registry.settings['a'], 1) + dummy = DummyEvent() + self.assertIs(dummy_registry.queryAdapterOrSelf(dummy, IDummy), dummy) + class Test_cleanUp(Test_setUp): def _callFUT(self, *arg, **kw): |
