mirror of
https://github.com/django/django.git
synced 2025-08-03 02:23:12 +00:00
[py3] Ported django.core.servers.
This commit is contained in:
parent
8c356acf2e
commit
fcc8de0598
2 changed files with 19 additions and 13 deletions
|
@ -1,5 +1,8 @@
|
|||
from __future__ import unicode_literals
|
||||
|
||||
from io import BytesIO
|
||||
|
||||
from django.core.servers.basehttp import ServerHandler
|
||||
from django.utils.six import StringIO
|
||||
from django.utils.unittest import TestCase
|
||||
|
||||
#
|
||||
|
@ -23,12 +26,12 @@ class FileWrapperHandler(ServerHandler):
|
|||
return True
|
||||
|
||||
def wsgi_app(environ, start_response):
|
||||
start_response('200 OK', [('Content-Type', 'text/plain')])
|
||||
return ['Hello World!']
|
||||
start_response(str('200 OK'), [(str('Content-Type'), str('text/plain'))])
|
||||
return [b'Hello World!']
|
||||
|
||||
def wsgi_app_file_wrapper(environ, start_response):
|
||||
start_response('200 OK', [('Content-Type', 'text/plain')])
|
||||
return environ['wsgi.file_wrapper'](StringIO('foo'))
|
||||
start_response(str('200 OK'), [(str('Content-Type'), str('text/plain'))])
|
||||
return environ['wsgi.file_wrapper'](BytesIO(b'foo'))
|
||||
|
||||
class WSGIFileWrapperTests(TestCase):
|
||||
"""
|
||||
|
@ -37,15 +40,16 @@ class WSGIFileWrapperTests(TestCase):
|
|||
|
||||
def test_file_wrapper_uses_sendfile(self):
|
||||
env = {'SERVER_PROTOCOL': 'HTTP/1.0'}
|
||||
err = StringIO()
|
||||
handler = FileWrapperHandler(None, StringIO(), err, env)
|
||||
handler = FileWrapperHandler(None, BytesIO(), BytesIO(), env)
|
||||
handler.run(wsgi_app_file_wrapper)
|
||||
self.assertTrue(handler._used_sendfile)
|
||||
self.assertEqual(handler.stdout.getvalue(), b'')
|
||||
self.assertEqual(handler.stderr.getvalue(), b'')
|
||||
|
||||
def test_file_wrapper_no_sendfile(self):
|
||||
env = {'SERVER_PROTOCOL': 'HTTP/1.0'}
|
||||
err = StringIO()
|
||||
handler = FileWrapperHandler(None, StringIO(), err, env)
|
||||
handler = FileWrapperHandler(None, BytesIO(), BytesIO(), env)
|
||||
handler.run(wsgi_app)
|
||||
self.assertFalse(handler._used_sendfile)
|
||||
self.assertEqual(handler.stdout.getvalue().splitlines()[-1],'Hello World!')
|
||||
self.assertEqual(handler.stdout.getvalue().splitlines()[-1], b'Hello World!')
|
||||
self.assertEqual(handler.stderr.getvalue(), b'')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue