def test_basic_target_path(self): router = Router() template = URITemplate('/root/{target}{/path*}') routeuri = templateuri_to_sanic_routeuri(template) # have to use strict slashes to avoid ambiguity. router.add(routeuri, ['GET'], 'root-target-path', strict_slashes=True) request = make_request('/root/base/some/test/path') self.assertEqual(( 'root-target-path', [], { 'target': 'base', 'path': '/some/test/path', }, routeuri, None, ), router.get(request)) request = make_request('/root/base/some/test/path/') self.assertEqual(( 'root-target-path', [], { 'target': 'base', 'path': '/some/test/path/', }, routeuri, None, ), router.get(request))
def test_fail_on_partial(self): router = Router() template = URITemplate('/rooted') routeuri = templateuri_to_sanic_routeuri(template) router.add(routeuri, ['GET'], 'root') request = make_request('/root') with self.assertRaises(NotFound): router.get(request) request = make_request('/roottedmore') with self.assertRaises(NotFound): router.get(request)
def test_basic(self): router = Router() template = URITemplate('/root') routeuri = templateuri_to_sanic_routeuri(template) router.add(routeuri, ['GET'], 'root') request = make_request('/root') self.assertEqual(( 'root', [], {}, routeuri, None, ), router.get(request))