From c18e278c73ebbf79a7776d417b6194ff7ffc3081 Mon Sep 17 00:00:00 2001 From: Chris McDonough Date: Tue, 29 Mar 2011 02:43:24 -0400 Subject: branch coverage --- pyramid/tests/test_url.py | 63 ++++++++++++++++++++++++++++++++++++--- pyramid/tests/test_urldispatch.py | 8 +++++ 2 files changed, 67 insertions(+), 4 deletions(-) diff --git a/pyramid/tests/test_url.py b/pyramid/tests/test_url.py index e13fbbb91..08708d93b 100644 --- a/pyramid/tests/test_url.py +++ b/pyramid/tests/test_url.py @@ -160,11 +160,18 @@ class TestRouteUrl(unittest.TestCase): request = _makeRequest() mapper = DummyRoutesMapper(route=DummyRoute('/1/2/3')) request.registry.registerUtility(mapper, IRoutesMapper) - result = self._callFUT('flub', request, 'extra1', 'extra2', - a=1, b=2, c=3, _query={'a':1}, - _anchor=u"foo") + result = self._callFUT('flub', request, 'extra1', 'extra2') self.assertEqual(result, - 'http://example.com:5432/1/2/3/extra1/extra2?a=1#foo') + 'http://example.com:5432/1/2/3/extra1/extra2') + + def test_with_elements_path_endswith_slash(self): + from pyramid.interfaces import IRoutesMapper + request = _makeRequest() + mapper = DummyRoutesMapper(route=DummyRoute('/1/2/3/')) + request.registry.registerUtility(mapper, IRoutesMapper) + result = self._callFUT('flub', request, 'extra1', 'extra2') + self.assertEqual(result, + 'http://example.com:5432/1/2/3/extra1/extra2') def test_no_elements(self): from pyramid.interfaces import IRoutesMapper @@ -176,6 +183,43 @@ class TestRouteUrl(unittest.TestCase): self.assertEqual(result, 'http://example.com:5432/1/2/3?a=1#foo') + def test_with_anchor_string(self): + from pyramid.interfaces import IRoutesMapper + request = _makeRequest() + mapper = DummyRoutesMapper(route=DummyRoute('/1/2/3')) + request.registry.registerUtility(mapper, IRoutesMapper) + result = self._callFUT('flub', request, _anchor="La Pe\xc3\xb1a") + self.assertEqual(result, + 'http://example.com:5432/1/2/3#La Pe\xc3\xb1a') + + def test_with_anchor_unicode(self): + from pyramid.interfaces import IRoutesMapper + request = _makeRequest() + mapper = DummyRoutesMapper(route=DummyRoute('/1/2/3')) + request.registry.registerUtility(mapper, IRoutesMapper) + anchor = unicode('La Pe\xc3\xb1a', 'utf-8') + result = self._callFUT('flub', request, _anchor=anchor) + self.assertEqual(result, + 'http://example.com:5432/1/2/3#La Pe\xc3\xb1a') + + def test_with_query(self): + from pyramid.interfaces import IRoutesMapper + request = _makeRequest() + mapper = DummyRoutesMapper(route=DummyRoute('/1/2/3')) + request.registry.registerUtility(mapper, IRoutesMapper) + result = self._callFUT('flub', request, _query={'q':'1'}) + self.assertEqual(result, + 'http://example.com:5432/1/2/3?q=1') + + def test_with_app_url(self): + from pyramid.interfaces import IRoutesMapper + request = _makeRequest() + mapper = DummyRoutesMapper(route=DummyRoute('/1/2/3')) + request.registry.registerUtility(mapper, IRoutesMapper) + result = self._callFUT('flub', request, _app_url='http://example2.com') + self.assertEqual(result, + 'http://example2.com/1/2/3') + def test_it_generation_error(self): from pyramid.interfaces import IRoutesMapper request = _makeRequest() @@ -217,6 +261,17 @@ class TestRouteUrl(unittest.TestCase): self.assertEqual(result, 'http://example2.com/1/2/3/a') self.assertEqual(route.kw, {}) # shouldnt have anchor/query + def test_with_anchor_app_url_elements_and_query(self): + from pyramid.interfaces import IRoutesMapper + request = _makeRequest() + mapper = DummyRoutesMapper(route=DummyRoute(result='/1/2/3')) + request.registry.registerUtility(mapper, IRoutesMapper) + result = self._callFUT('flub', request, 'element1', + _app_url='http://example2.com', + _anchor='anchor', _query={'q':'1'}) + self.assertEqual(result, + 'http://example2.com/1/2/3/element1?q=1#anchor') + class TestCurrentRouteUrl(unittest.TestCase): def setUp(self): cleanUp() diff --git a/pyramid/tests/test_urldispatch.py b/pyramid/tests/test_urldispatch.py index a0401ba6b..5be04478f 100644 --- a/pyramid/tests/test_urldispatch.py +++ b/pyramid/tests/test_urldispatch.py @@ -175,6 +175,14 @@ class RoutesMapperTests(unittest.TestCase): self.assertEqual(result['route'], mapper.routes['root']) self.assertEqual(result['match'], {}) + def test___call__root_route_when_path_info_notempty(self): + mapper = self._makeOne() + mapper.connect('root', '/') + request = self._getRequest(PATH_INFO='/') + result = mapper(request) + self.assertEqual(result['route'], mapper.routes['root']) + self.assertEqual(result['match'], {}) + def test___call__no_path_info(self): mapper = self._makeOne() mapper.connect('root', '/') -- cgit v1.2.3