示例#1
0
 def _request(self, environ=None, **kw):
     environ = environ or {}
     kw.setdefault('path_info', '/')
     environ.setdefault('REMOTE_ADDR', '127.0.0.1')
     from hamage.filter import Request
     req = Request(environ=environ, **kw)
     return req
示例#2
0
 def test_handle_post__ok(self, mockFilterSystem):
     middleware = self._make_one({'options': {}})
     env = {'REQUEST_METHOD': 'POST', 'REMOTE_ADDR': '127.0.0.1',
            'HTTP_HOST': 'localhost'}
     request = Request.blank('/', env)
     mockFilterSystem.test.return_value = True
     mockFilterSystem._backend_factory = mock.Mock()
     result = middleware.handle_post(request)
     self.assertEqual(result, (True, ''))
示例#3
0
    def test_handle_post__nope(self, mockFilterSystem):
        middleware = self._make_one({'options': {}})
        env = {'REQUEST_METHOD': 'POST', 'REMOTE_ADDR': '127.0.0.1',
               'HTTP_HOST': 'localhost'}
        request = Request.blank('/', env)
        from hamage.filter import RejectContent
        mockFilterSystem.return_value.test.side_effect = RejectContent('oh no')

        result = middleware.handle_post(request)
        self.assertEqual(result, (False, 'oh no'))
示例#4
0
    def test_handle_spam(self):
        middleware = self._make_one({'options': {}})
        env = {'REQUEST_METHOD': 'POST', 'REMOTE_ADDR': '127.0.0.1',
               'HTTP_HOST': 'localhost'}
        request = Request.blank('/', env)

        def app_side_effect(environ, start_response):
            # need this to make webob.Request.get_response(app) happy
            start_response('200 OK', headers=[])
            return ['This is the response body']

        middleware.app.side_effect = app_side_effect
        middleware.handle_spam(request)
示例#5
0
 def _request(self, **kw):
     from hamage.filter import Request
     req = Request(environ={}, **kw)
     return req