diff options
| author | Chris McDonough <chrism@agendaless.com> | 2009-05-18 07:07:12 +0000 |
|---|---|---|
| committer | Chris McDonough <chrism@agendaless.com> | 2009-05-18 07:07:12 +0000 |
| commit | 916f88578ad68470a35a4b7afd223e9dbf5fd20d (patch) | |
| tree | 52913d78e5876ca2612da56c6d066227001d9160 /repoze/bfg/tests/test_urldispatch.py | |
| parent | 8e2f6eaae104df8bf13678a67f4690294f982e2d (diff) | |
| download | pyramid-916f88578ad68470a35a4b7afd223e9dbf5fd20d.tar.gz pyramid-916f88578ad68470a35a4b7afd223e9dbf5fd20d.tar.bz2 pyramid-916f88578ad68470a35a4b7afd223e9dbf5fd20d.zip | |
Features
--------
- Added a ``traverse`` function to the ``repoze.bfg.traversal``
module. This function may be used to retrieve certain values
computed during path resolution. See the Traversal API chapter of
the documentation for more information about this function.
Deprecations
------------
- Internal: ``ITraverser`` callables should now return a dictionary
rather than a tuple. Up until 0.7.0, all ITraversers were assumed
to return a 3-tuple. In 0.7.1, ITraversers were assumed to return a
6-tuple. As (by evidence) it's likely we'll need to add further
information to the return value of an ITraverser callable, 0.8
assumes that an ITraverser return a dictionary with certain elements
in it. See the ``repoze.bfg.interfaces.ITraverser`` interface for
the list of keys that should be present in the dictionary.
``ITraversers`` which return tuples will still work, although a
deprecation warning will be issued.
Backwards Incompatibilities
---------------------------
- If your code used the ITraverser interface directly (not via an API
function such as ``find_model``) via an adapter lookup, you'll need
to change your code to expect a dictionary rather than a 3- or
6-tuple if your code ever gets return values from the default
ModelGraphTraverser or RoutesModelTraverser adapters.
Diffstat (limited to 'repoze/bfg/tests/test_urldispatch.py')
| -rw-r--r-- | repoze/bfg/tests/test_urldispatch.py | 38 |
1 files changed, 19 insertions, 19 deletions
diff --git a/repoze/bfg/tests/test_urldispatch.py b/repoze/bfg/tests/test_urldispatch.py index e5ae483e7..92564146e 100644 --- a/repoze/bfg/tests/test_urldispatch.py +++ b/repoze/bfg/tests/test_urldispatch.py @@ -232,12 +232,12 @@ class RoutesModelTraverserTests(unittest.TestCase): route = DummyRoute('yo') environ = {'wsgiorg.routing_args': routing_args, 'bfg.route': route} result = traverser(environ) - self.assertEqual(result[0], model) - self.assertEqual(result[1], 'yo') - self.assertEqual(result[2], []) - self.assertEqual(result[3], None) - self.assertEqual(result[4], model) - self.assertEqual(result[5], None) + self.assertEqual(result['context'], model) + self.assertEqual(result['view_name'], 'yo') + self.assertEqual(result['subpath'], []) + self.assertEqual(result['traversed'], None) + self.assertEqual(result['virtual_root'], model) + self.assertEqual(result['virtual_root_path'], None) def test_call_with_subpath(self): model = DummyContext() @@ -246,12 +246,12 @@ class RoutesModelTraverserTests(unittest.TestCase): route = DummyRoute('yo') environ = {'wsgiorg.routing_args':routing_args, 'bfg.route': route} result = traverser(environ) - self.assertEqual(result[0], model) - self.assertEqual(result[1], 'yo') - self.assertEqual(result[2], ['a', 'b','c']) - self.assertEqual(result[3], None) - self.assertEqual(result[4], model) - self.assertEqual(result[5], None) + self.assertEqual(result['context'], model) + self.assertEqual(result['view_name'], 'yo') + self.assertEqual(result['subpath'], ['a', 'b','c']) + self.assertEqual(result['traversed'], None) + self.assertEqual(result['virtual_root'], model) + self.assertEqual(result['virtual_root_path'], None) def test_with_path_info(self): model = DummyContext() @@ -261,12 +261,12 @@ class RoutesModelTraverserTests(unittest.TestCase): environ = {'wsgiorg.routing_args': routing_args, 'bfg.route': route, 'PATH_INFO':'/a/b/foo/bar', 'SCRIPT_NAME':''} result = traverser(environ) - self.assertEqual(result[0], model) - self.assertEqual(result[1], 'yo') - self.assertEqual(result[2], []) - self.assertEqual(result[3], None) - self.assertEqual(result[4], model) - self.assertEqual(result[5], None) + self.assertEqual(result['context'], model) + self.assertEqual(result['view_name'], 'yo') + self.assertEqual(result['subpath'], []) + self.assertEqual(result['traversed'], None) + self.assertEqual(result['virtual_root'], model) + self.assertEqual(result['virtual_root_path'], None) self.assertEqual(environ['PATH_INFO'], '/foo/bar') self.assertEqual(environ['SCRIPT_NAME'], '/a/b') @@ -277,7 +277,7 @@ class RoutesModelTraverserTests(unittest.TestCase): route = DummyRoute('yo') environ = {'wsgiorg.routing_args': routing_args, 'bfg.route':route, 'PATH_INFO':'/a/b//foo/bar', 'SCRIPT_NAME':''} - result = traverser(environ) + traverser(environ) self.assertEqual(environ['PATH_INFO'], '/foo/bar') self.assertEqual(environ['SCRIPT_NAME'], '/a/b') |
