Пример #1
0
 def test_chunked_request_payload_readline(self):
     if self.scheme == "https":
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest("POST", "/echo_lines")
     c.putheader("Transfer-Encoding", "chunked")
     c.endheaders()
     c.send(ntob("13\r\nI am a\nrequest body\r\n0\r\n\r\n"))
     response = c.getresponse()
     self.status, self.headers, self.body = webtest.shb(response)
     c.close()
     self.assertStatus(200)
     self.assertBody("I am a\nrequest body")
Пример #2
0
 def test_chunked_request_payload_readline(self):
     if self.scheme == "https":
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest("POST", "/echo_lines")
     c.putheader("Transfer-Encoding", "chunked")
     c.endheaders()
     c.send(ntob("13\r\nI am a\nrequest body\r\n0\r\n\r\n"))
     response = c.getresponse()
     self.status, self.headers, self.body = webtest.shb(response)
     c.close()
     self.assertStatus(200)
     self.assertBody("I am a\nrequest body")
Пример #3
0
 def test_request_payload_readline(self):
     if self.scheme == "https":
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest("POST", "/echo_lines")
     body = ntob("I am a\nrequest body")
     c.putheader("Content-Length", len(body))
     c.endheaders()
     c.send(body)
     response = c.getresponse()
     self.status, self.headers, self.body = webtest.shb(response)
     c.close()
     self.assertStatus(200)
     self.assertBody(body)
Пример #4
0
 def test_request_payload_readline(self):
     if self.scheme == "https":
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest("POST", "/echo_lines")
     body = ntob("I am a\nrequest body")
     c.putheader("Content-Length", len(body))
     c.endheaders()
     c.send(body)
     response = c.getresponse()
     self.status, self.headers, self.body = webtest.shb(response)
     c.close()
     self.assertStatus(200)
     self.assertBody(body)
Пример #5
0
 def test_max_body(self):
     if self.scheme == "https":
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest("POST", "/echo")
     body = ntob("x" * 1001)
     c.putheader("Content-Length", len(body))
     c.endheaders()
     c.send(body)
     response = c.getresponse()
     self.status, self.headers, self.body = webtest.shb(response)
     c.close()
     self.assertStatus(413)
     self.assertBody("The entity sent with the request exceeds "
                     "the maximum allowed bytes.")
Пример #6
0
 def test_max_body(self):
     if self.scheme == "https":
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c.putrequest("POST", "/echo")
     body = ntob("x" * 1001)
     c.putheader("Content-Length", len(body))
     c.endheaders()
     c.send(body)
     response = c.getresponse()
     self.status, self.headers, self.body = webtest.shb(response)
     c.close()
     self.assertStatus(413)
     self.assertBody(
         "The entity sent with the request exceeds "
         "the maximum allowed bytes.")
Пример #7
0
 def test_malformed_request_line(self):
     # Test missing version in Request-Line
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c._output(ntob('GET /'))
     c._send_output()
     if hasattr(c, 'strict'):
         response = c.response_class(c.sock, strict=c.strict, method='GET')
     else:
         # Python 3.2 removed the 'strict' feature, saying:
         # "http.client now always assumes HTTP/1.x compliant servers."
         response = c.response_class(c.sock, method='GET')
     response.begin()
     self.assertEqual(response.status, 400)
     self.assertEqual(response.fp.read(22), ntob("Malformed Request-Line"))
     c.close()
Пример #8
0
 def test_malformed_request_line(self):
     # Test missing version in Request-Line
     if self.scheme == 'https':
         c = HTTPSConnection('%s:%s' % (self.interface(), self.PORT))
     else:
         c = HTTPConnection('%s:%s' % (self.interface(), self.PORT))
     c._output(ntob('GET /'))
     c._send_output()
     if hasattr(c, 'strict'):
         response = c.response_class(c.sock, strict=c.strict, method='GET')
     else:
         # Python 3.2 removed the 'strict' feature, saying:
         # "http.client now always assumes HTTP/1.x compliant servers."
         response = c.response_class(c.sock, method='GET')
     response.begin()
     self.assertEqual(response.status, 400)
     self.assertEqual(response.fp.read(22), ntob("Malformed Request-Line"))
     c.close()