From c32af05d5914a85967e01127eb4b1765e43788e9 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Sun, 1 Nov 2009 01:56:29 +0000 Subject: - Deal with a potential circref in the traversal module. --- CHANGES.txt | 8 ++++++++ repoze/bfg/tests/test_traversal.py | 16 ++++++++++++++++ repoze/bfg/traversal.py | 2 +- 3 files changed, 25 insertions(+), 1 deletion(-) diff --git a/CHANGES.txt b/CHANGES.txt index dec72da5e..8e291b9f3 100644 --- a/CHANGES.txt +++ b/CHANGES.txt @@ -1,3 +1,11 @@ +Next release +============ + +Internal +-------- + +- Deal with a potential circref in the traversal module. + 1.1a9 (2009-10-31) ================== diff --git a/repoze/bfg/tests/test_traversal.py b/repoze/bfg/tests/test_traversal.py index 451642e8c..ba9fc8b30 100644 --- a/repoze/bfg/tests/test_traversal.py +++ b/repoze/bfg/tests/test_traversal.py @@ -969,7 +969,23 @@ class TraverseTests(unittest.TestCase): result = self._callFUT(model, '') self.assertEqual(result['view_name'], '') self.assertEqual(result['context'], model) + +class TestFakeRequest(unittest.TestCase): + def _makeOne(self, environ): + from repoze.bfg.traversal import FakeRequest + return FakeRequest(environ) + + def test_environ(self): + environ = {'a':1, 'b':2} + request = self._makeOne(environ) + self.assertEqual(request.environ['a'], 1) + self.assertEqual(request.environ['b'], 2) + def test_asdict(self): + environ = {'a':1, 'b':2} + request = self._makeOne(environ) + self.assertEqual(request['a'], 1) + self.assertEqual(request['b'], 2) def make_traverser(result): class DummyTraverser(object): diff --git a/repoze/bfg/traversal.py b/repoze/bfg/traversal.py index d48627e7e..6eda82a92 100644 --- a/repoze/bfg/traversal.py +++ b/repoze/bfg/traversal.py @@ -633,6 +633,6 @@ def _join_path_tuple(tuple): class FakeRequest(dict): def __init__(self, environ): + self.environ = environ self.update(environ) - self.environ = self # XXX circref? -- cgit v1.2.3