def get_zope_request(webob_request):
    outstream = StringIO()
    response = ZServerHTTPResponse(stdout=outstream, stderr=sys.stderr)
    environ = webob_request.environ
    zope_request = Request(environ['wsgi.input'], environ, response)
    zope_request.processInputs()
    return zope_request
Пример #2
0
 def test_setBodyIterator(self):
     channel = DummyChannel()
     one = ZServerHTTPResponse(stdout=channel)
     one.setHeader('content-length', 5)
     one.setBody(test_streamiterator())
     one.outputBody()
     all = channel.all()
     lines = all.split('\r\n')
     self.assertEqual(lines[-2], '')  # end of headers
     self.assertEqual(lines[-1], 'hello')  # payload
Пример #3
0
    def testStreaming(self):
        out = StringIO()
        response = ZServerHTTPResponse(stdout=out)
        response.write('datachunk1')
        response.write('datachunk2')

        events = self.reporter.events
        self.assertEqual(len(events), 1)
        self.assert_(isinstance(events[0], PubBeforeStreaming))
        self.assertEqual(events[0].response, response)

        self.assertTrue('datachunk1datachunk2' in out.getvalue())
Пример #4
0
 def test_setBodyIteratorFailsWithoutContentLength(self):
     one = ZServerHTTPResponse(stdout=DummyChannel())
     self.assertRaises(AssertionError, one.setBody, test_streamiterator())
Пример #5
0
 def test_http_response_write_unicode(self):
     response = ZServerHTTPResponse()
     self.assertRaises(TypeError, response.write, u'bad')
Пример #6
0
 def _makeOne(self):
     return ZServerHTTPResponse()