mirror of https://git.48k.eu/ogserver
#915 add test for too large HTTP request fields
This test checks for wrong headers HTTP requests: 1. POST /clients with a content length larger than a signed int. 2. POST /clients with an auth token larger than 63 characters.master
parent
36ad0061d7
commit
46d791ae44
|
@ -0,0 +1,29 @@
|
|||
import requests
|
||||
import unittest
|
||||
|
||||
class TestPostWrongHeaders(unittest.TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.url = 'http://localhost:8888/clients'
|
||||
self.too_large_content_length_headers = {'Authorization' :
|
||||
'07b3bfe728954619b58f0107ad73acc1', 'Content-Length' :
|
||||
'999999999999999999999999999999999999999999999999999999999'}
|
||||
self.too_large_auth_headers = {'Authorization' :
|
||||
'TooLongoTooLongTooLongTooLongTooLongTooLongTooLongTooLong'
|
||||
'TooLongoTooLongTooLongTooLongTooLongTooLongTooLongTooLong'
|
||||
'TooLongoTooLongTooLongTooLongTooLongTooLongTooLongTooLong'}
|
||||
self.json = { 'clients' : [ '192.168.2.1', '192.168.2.2' ] }
|
||||
|
||||
def test_post_too_large_content(self):
|
||||
with self.assertRaises(requests.exceptions.ConnectionError) as context:
|
||||
returned = requests.post(self.url,
|
||||
headers=self.too_large_content_length_headers)
|
||||
|
||||
self.assertTrue('Connection aborted' in str(context.exception))
|
||||
|
||||
def test_post_too_large_auth(self):
|
||||
returned = requests.post(self.url, headers=self.too_large_auth_headers)
|
||||
self.assertEqual(returned.status_code, 401)
|
||||
|
||||
if __name__ == '__main__':
|
||||
unittest.main()
|
Loading…
Reference in New Issue