# set remote IP and protocol
context = getattr(connection, 'context', None)
- self.remote_ip = getattr(context, 'remote_ip')
+ self.remote_ip = getattr(context, 'remote_ip', None)
self.protocol = getattr(context, 'protocol', "http")
self.host = host or self.headers.get("Host") or "127.0.0.1"
from __future__ import absolute_import, division, print_function, with_statement
-from tornado.httputil import url_concat, parse_multipart_form_data, HTTPHeaders, format_timestamp
+from tornado.httputil import url_concat, parse_multipart_form_data, HTTPHeaders, format_timestamp, HTTPServerRequest
from tornado.escape import utf8
from tornado.log import gen_log
from tornado.testing import ExpectLog
def test_datetime(self):
self.check(datetime.datetime.utcfromtimestamp(self.TIMESTAMP))
+
+
+# HTTPServerRequest is mainly tested incidentally to the server itself,
+# but this tests the parts of the class that can be tested in isolation.
+class HTTPServerRequestTest(unittest.TestCase):
+ def test_default_constructor(self):
+ # All parameters are formally optional, but uri is required
+ # (and has been for some time). This test ensures that no
+ # more required parameters slip in.
+ HTTPServerRequest(uri='/')