summaryrefslogtreecommitdiff
path: root/tests/servers
diff options
context:
space:
mode:
authorClaude Paroz <claude@2xlibre.net>2015-10-31 00:38:34 +0100
committerClaude Paroz <claude@2xlibre.net>2017-02-23 09:04:53 +0100
commite6065c7b8363202c5eb13ba10c97a8c24d014b45 (patch)
tree2fbdb58a352d6062de6fa39b5e931b5262d00a08 /tests/servers
parent007d4e030cbb20d3773609fa3bbae7cab8fadba2 (diff)
Fixed #25619 -- Made runserver serve with HTTP 1.1 protocol
Thanks Tim Graham for the review.
Diffstat (limited to 'tests/servers')
-rw-r--r--tests/servers/tests.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/tests/servers/tests.py b/tests/servers/tests.py
index b114b968df..cb91131607 100644
--- a/tests/servers/tests.py
+++ b/tests/servers/tests.py
@@ -4,11 +4,13 @@ Tests for django.core.servers.
import errno
import os
import socket
+from http.client import HTTPConnection
from urllib.error import HTTPError
from urllib.parse import urlencode
from urllib.request import urlopen
from django.test import LiveServerTestCase, override_settings
+from django.test.utils import captured_stdout
from .models import Person
@@ -50,6 +52,20 @@ class LiveServerAddress(LiveServerBase):
class LiveServerViews(LiveServerBase):
+ def test_protocol(self):
+ """Launched server serves with HTTP 1.1."""
+ with captured_stdout() as debug_output:
+ conn = HTTPConnection(LiveServerViews.server_thread.host, LiveServerViews.server_thread.port)
+ try:
+ conn.set_debuglevel(1)
+ conn.request('GET', '/example_view/', headers={"Connection": "keep-alive"})
+ conn.getresponse().read()
+ conn.request('GET', '/example_view/', headers={"Connection": "close"})
+ conn.getresponse()
+ finally:
+ conn.close()
+ self.assertEqual(debug_output.getvalue().count("reply: 'HTTP/1.1 200 OK"), 2)
+
def test_404(self):
with self.assertRaises(HTTPError) as err:
self.urlopen('/')