summaryrefslogtreecommitdiff
path: root/repoze/bfg/tests
diff options
context:
space:
mode:
authorChris McDonough <chrism@agendaless.com>2009-06-22 00:12:45 +0000
committerChris McDonough <chrism@agendaless.com>2009-06-22 00:12:45 +0000
commit6ecdbc409d2109a9e7fc5367c64067f0400f07cc (patch)
tree37a01b7f6d9c9fe10f8201bf67d89dfd480e9072 /repoze/bfg/tests
parent352276d69311cbd2ec4985b4e809b607102c2dab (diff)
downloadpyramid-6ecdbc409d2109a9e7fc5367c64067f0400f07cc.tar.gz
pyramid-6ecdbc409d2109a9e7fc5367c64067f0400f07cc.tar.bz2
pyramid-6ecdbc409d2109a9e7fc5367c64067f0400f07cc.zip
- Adding ``*path_info`` to a route no longer changes the PATH_INFO for
a request that matches using URL dispatch. This feature was only there to service the ``repoze.bfg.wsgi.wsgiapp2`` decorator and it did it wrong; use ``*subpath`` instead now. - The interface generation performed for named request factories had the wrong base classes.
Diffstat (limited to 'repoze/bfg/tests')
-rw-r--r--repoze/bfg/tests/test_request.py4
-rw-r--r--repoze/bfg/tests/test_traversal.py20
-rw-r--r--repoze/bfg/tests/test_urldispatch.py48
-rw-r--r--repoze/bfg/tests/test_wsgi.py14
4 files changed, 17 insertions, 69 deletions
diff --git a/repoze/bfg/tests/test_request.py b/repoze/bfg/tests/test_request.py
index 6855018b8..d5823e7d7 100644
--- a/repoze/bfg/tests/test_request.py
+++ b/repoze/bfg/tests/test_request.py
@@ -207,12 +207,14 @@ class TestNamedRequestFactories(unittest.TestCase):
self.assertEqual(factories[alias], factories[iface])
named_iface = factories[alias]['interface']
named_factory = factories[alias]['factory']
+ default_iface = factories[None]['interface']
self.assertEqual(factories[alias]['interface'], iface)
self.assertEqual(factories[iface]['interface'], iface)
self.assertEqual(factories[alias]['factory'].charset, 'utf-8')
self.failUnless(named_iface.implementedBy(named_factory))
self.failUnless(iface.implementedBy(named_factory))
self.failUnless(IRequest.implementedBy(named_factory))
+ self.failUnless(default_iface.implementedBy(named_factory))
def test_it_named(self):
factories = self._callFUT('name')
@@ -236,9 +238,11 @@ class TestNamedRequestFactories(unittest.TestCase):
self.assertEqual(factories[alias]['factory'].charset, 'utf-8')
named_iface = factories[alias]['interface']
named_factory = factories[alias]['factory']
+ default_iface = factories[None]['interface']
self.failUnless(named_iface.implementedBy(named_factory))
self.failUnless(iface.implementedBy(named_factory))
self.failUnless(IRequest.implementedBy(named_factory))
+ self.failUnless(default_iface.implementedBy(named_factory))
class TestDefaultRequestFactories(unittest.TestCase):
def test_it(self):
diff --git a/repoze/bfg/tests/test_traversal.py b/repoze/bfg/tests/test_traversal.py
index c81665ab1..a756c3c1a 100644
--- a/repoze/bfg/tests/test_traversal.py
+++ b/repoze/bfg/tests/test_traversal.py
@@ -86,7 +86,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], None)
self.assertEqual(result['view_name'], '')
- self.assertEqual(result['subpath'], [])
+ self.assertEqual(result['subpath'], ())
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], policy.root)
self.assertEqual(result['virtual_root_path'], [])
@@ -97,7 +97,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], None)
self.assertEqual(result['view_name'], 'foo')
- self.assertEqual(result['subpath'], ['bar'])
+ self.assertEqual(result['subpath'], ('bar',))
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], policy.root)
self.assertEqual(result['virtual_root_path'], [])
@@ -109,7 +109,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], root)
self.assertEqual(result['view_name'], '')
- self.assertEqual(result['subpath'], [])
+ self.assertEqual(result['subpath'], ())
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], root)
self.assertEqual(result['virtual_root_path'], [])
@@ -122,7 +122,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], foo)
self.assertEqual(result['view_name'], 'bar')
- self.assertEqual(result['subpath'], [])
+ self.assertEqual(result['subpath'], ())
self.assertEqual(result['traversed'], [u'foo'])
self.assertEqual(result['virtual_root'], root)
self.assertEqual(result['virtual_root_path'], [])
@@ -135,7 +135,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], foo)
self.assertEqual(result['view_name'], 'bar')
- self.assertEqual(result['subpath'], ['baz', 'buz'])
+ self.assertEqual(result['subpath'], ('baz', 'buz'))
self.assertEqual(result['traversed'], [u'foo'])
self.assertEqual(result['virtual_root'], root)
self.assertEqual(result['virtual_root_path'], [])
@@ -148,7 +148,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], root)
self.assertEqual(result['view_name'], 'foo')
- self.assertEqual(result['subpath'], [])
+ self.assertEqual(result['subpath'], ())
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], root)
self.assertEqual(result['virtual_root_path'], [])
@@ -168,7 +168,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = policy(environ)
self.assertEqual(result['context'], baz)
self.assertEqual(result['view_name'], '')
- self.assertEqual(result['subpath'], [])
+ self.assertEqual(result['subpath'], ())
self.assertEqual(result['traversed'], [u'foo', u'bar', u'baz'])
self.assertEqual(result['virtual_root'], bar)
self.assertEqual(result['virtual_root_path'], [u'foo', u'bar'])
@@ -197,7 +197,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = traverser(environ)
self.assertEqual(result['context'], model)
self.assertEqual(result['view_name'], '')
- self.assertEqual(result['subpath'], [])
+ self.assertEqual(result['subpath'], ())
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], model)
self.assertEqual(result['virtual_root_path'], [])
@@ -209,7 +209,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = traverser(environ)
self.assertEqual(result['context'], model)
self.assertEqual(result['view_name'], '')
- self.assertEqual(result['subpath'], ['a', 'b','c'])
+ self.assertEqual(result['subpath'], ('a', 'b','c'))
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], model)
self.assertEqual(result['virtual_root_path'], [])
@@ -221,7 +221,7 @@ class ModelGraphTraverserTests(unittest.TestCase):
result = traverser(environ)
self.assertEqual(result['context'], model)
self.assertEqual(result['view_name'], 'foo')
- self.assertEqual(result['subpath'], ['bar'])
+ self.assertEqual(result['subpath'], ('bar',))
self.assertEqual(result['traversed'], [])
self.assertEqual(result['virtual_root'], model)
self.assertEqual(result['virtual_root_path'], [])
diff --git a/repoze/bfg/tests/test_urldispatch.py b/repoze/bfg/tests/test_urldispatch.py
index eb3be4323..68fda032d 100644
--- a/repoze/bfg/tests/test_urldispatch.py
+++ b/repoze/bfg/tests/test_urldispatch.py
@@ -70,54 +70,6 @@ class RoutesRootFactoryTests(unittest.TestCase):
self.assertEqual(environ['bfg.routes.matchdict'], {})
self.assertEqual(environ['wsgiorg.routing_args'], ((), {}))
- def test_matches_with_path_info_no_scriptname(self):
- root_factory = make_get_root(123)
- mapper = self._makeOne(root_factory)
- mapper.connect('root', '/a/b/*path_info')
- environ = self._getEnviron(PATH_INFO='/a/b/c/d')
- result = mapper(environ)
- self.assertEqual(result, 123)
- self.assertEqual(environ['bfg.routes.route'].name, 'root')
- self.assertEqual(environ['bfg.routes.matchdict'], {'path_info':'c/d'})
- self.assertEqual(environ['PATH_INFO'], '/c/d')
- self.assertEqual(environ['SCRIPT_NAME'], '/a/b')
-
- def test_matches_with_path_info_with_scriptname(self):
- root_factory = make_get_root(123)
- mapper = self._makeOne(root_factory)
- mapper.connect('root', '/a/b/*path_info')
- environ = self._getEnviron(PATH_INFO='/a/b/c/d', SCRIPT_NAME='z')
- result = mapper(environ)
- self.assertEqual(result, 123)
- self.assertEqual(environ['bfg.routes.route'].name, 'root')
- self.assertEqual(environ['bfg.routes.matchdict'], {'path_info':'c/d'})
- self.assertEqual(environ['PATH_INFO'], '/c/d')
- self.assertEqual(environ['SCRIPT_NAME'], 'z/a/b')
-
- def test_matches_PATH_INFO_w_extra_slash(self):
- root_factory = make_get_root(123)
- mapper = self._makeOne(root_factory)
- mapper.connect('root', '/a/b/*path_info')
- environ = self._getEnviron(PATH_INFO='/a/b//c/d', SCRIPT_NAME='')
- result = mapper(environ)
- self.assertEqual(result, 123)
- self.assertEqual(environ['bfg.routes.route'].name, 'root')
- self.assertEqual(environ['bfg.routes.matchdict'], {'path_info':'/c/d'})
- self.assertEqual(environ['PATH_INFO'], '/c/d')
- self.assertEqual(environ['SCRIPT_NAME'], '/a/b')
-
- def test_matches_SCRIPT_NAME_endswith_slash(self):
- root_factory = make_get_root(123)
- mapper = self._makeOne(root_factory)
- mapper.connect('root', '/a/b//*path_info')
- environ = self._getEnviron(PATH_INFO='/a/b//c/d', SCRIPT_NAME='')
- result = mapper(environ)
- self.assertEqual(result, 123)
- self.assertEqual(environ['bfg.routes.route'].name, 'root')
- self.assertEqual(environ['bfg.routes.matchdict'], {'path_info':'c/d'})
- self.assertEqual(environ['PATH_INFO'], '/c/d')
- self.assertEqual(environ['SCRIPT_NAME'], '/a/b')
-
def test_unicode_in_route_default(self):
root_factory = make_get_root(123)
mapper = self._makeOne(root_factory)
diff --git a/repoze/bfg/tests/test_wsgi.py b/repoze/bfg/tests/test_wsgi.py
index 9d8a85630..5d3ec1faa 100644
--- a/repoze/bfg/tests/test_wsgi.py
+++ b/repoze/bfg/tests/test_wsgi.py
@@ -17,15 +17,7 @@ class WSGIApp2Tests(unittest.TestCase):
from repoze.bfg.wsgi import wsgiapp2
return wsgiapp2(app)
- def test_decorator_traversed_is_None(self):
- context = DummyContext()
- request = DummyRequest()
- request.traversed = None
- decorator = self._callFUT(dummyapp)
- response = decorator(context, request)
- self.assertEqual(response, dummyapp)
-
- def test_decorator_traversed_not_None_with_subpath_and_view_name(self):
+ def test_decorator_with_subpath_and_view_name(self):
context = DummyContext()
request = DummyRequest()
request.traversed = ['a', 'b']
@@ -39,7 +31,7 @@ class WSGIApp2Tests(unittest.TestCase):
self.assertEqual(request.environ['PATH_INFO'], '/subpath')
self.assertEqual(request.environ['SCRIPT_NAME'], '/foo/b/view_name')
- def test_decorator_traversed_not_None_with_subpath_no_view_name(self):
+ def test_decorator_with_subpath_no_view_name(self):
context = DummyContext()
request = DummyRequest()
request.traversed = ['a', 'b']
@@ -53,7 +45,7 @@ class WSGIApp2Tests(unittest.TestCase):
self.assertEqual(request.environ['PATH_INFO'], '/subpath')
self.assertEqual(request.environ['SCRIPT_NAME'], '/foo/b')
- def test_decorator_traversed_not_None_no_subpath_with_view_name(self):
+ def test_decorator_no_subpath_with_view_name(self):
context = DummyContext()
request = DummyRequest()
request.traversed = ['a', 'b']