Example #1
0
 def test_pass_request_only(self):
     """ addslash passes on just the request if that's all that's needed """
     @addslash
     def myview(request):
         return request
     context = object()
     request = DummyRequest()
     request.path_url = '/'
     ret = myview(context, request)
     self.assertEqual(ret, request)
Example #2
0
 def test_pass_context(self):
     """ addslash passes on the context variable if needed """
     @addslash
     def myview(context, request):
         return context, request
     context = object()
     request = DummyRequest()
     request.path_url = '/'
     ret = myview(context, request)
     self.assertEqual(ret, (context, request))
Example #3
0
 def test_addslash_redirect(self):
     """ addslash causes redirect if path_url doesn't end in / """
     @addslash
     def myview(request):  # pragma: no cover
         return 'foobar'
     context = object()
     request = DummyRequest()
     request.path_url = '/noslash'
     ret = myview(context, request)
     self.assertTrue(isinstance(ret, HTTPFound))
     self.assertEqual(ret.location, request.path_url + '/')
Example #4
0
 def test_addslash_redirect_query(self):
     """ addslash keeps the query string """
     @addslash
     def myview(request):  # pragma: no cover
         return 'foobar'
     context = object()
     request = DummyRequest()
     request.query_string = 'foo=1&bar=2'
     request.path_url = '/noslash'
     ret = myview(context, request)
     self.assertTrue(isinstance(ret, HTTPFound))
     self.assertEqual(ret.location, request.path_url + '/?' +
                      request.query_string)