diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/units/test_0001_probe.py | 35 |
1 files changed, 32 insertions, 3 deletions
diff --git a/tests/units/test_0001_probe.py b/tests/units/test_0001_probe.py index fc66dbc..0f08296 100644 --- a/tests/units/test_0001_probe.py +++ b/tests/units/test_0001_probe.py @@ -12,15 +12,18 @@ import unittest class TestProbeMethods(unittest.TestCase): + def setUp(self): + self.ok_response = 'HTTP/1.0 200 OK\r\nContent-Length:17\r\n' \ + 'Content-Type:application/json\r\n\r\n' + \ + '{"status": "OPG"}' + def test_post(self): - msg = 'HTTP/1.0 200 OK\r\nContent-Length:17\r\n' \ - 'Content-Type:application/json\r\n\r\n{"status": "OPG"}' c = Client() s = Server() server_response = s.connect() s.stop() c.stop() - self.assertEqual(server_response, msg) + self.assertEqual(server_response, self.ok_response) def test_no_json(self): c = Client() @@ -46,5 +49,31 @@ class TestProbeMethods(unittest.TestCase): c.stop() self.assertEqual(response, 'HTTP/1.0 400 Bad Request\r\n\r\n') + def test_multiple_probes(self): + c = Client() + s = Server() + s.connect(probe=False) + s.send(s._probe_msg) + s.send(s._probe_msg) + server_response = s.recv() + s.stop() + c.stop() + self.assertEqual(server_response, self.ok_response) + + def test_extra_parameter_json(self): + json = '{"id": 0, "name": "test_local", "center": 0, "room": 0, ' + \ + '"extra_param": true}' + len_json = str(len(json)) + msg = 'POST /probe HTTP/1.0\r\nContent-Length:' + len_json + \ + '\r\nContent-Type:application/json\r\n\r\n' + json + c = Client() + s = Server() + s.connect(probe=False) + s.send(msg) + response = s.recv() + s.stop() + c.stop() + self.assertRegex(response, '^HTTP/1.0 200 OK\r\n*') + if __name__ == '__main__': unittest.main() |