From d401c9ff468b3df106b2693611661c3870d5b89d Mon Sep 17 00:00:00 2001 From: Roberto Hueso Gómez Date: Tue, 21 Jan 2020 12:04:26 +0100 Subject: Add /software test This test covers a correct request. --- tests/units/test_0007_software.py | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 tests/units/test_0007_software.py (limited to 'tests/units') diff --git a/tests/units/test_0007_software.py b/tests/units/test_0007_software.py new file mode 100644 index 0000000..0984c56 --- /dev/null +++ b/tests/units/test_0007_software.py @@ -0,0 +1,38 @@ +# +# Copyright (C) 2020 Soleta Networks +# +# This program is free software: you can redistribute it and/or modify it under +# the terms of the GNU Affero General Public License as published by the +# Free Software Foundation, version 3. +# + +from server import Server +from client import Client +import unittest +import json + +class TestSoftwareMethods(unittest.TestCase): + + def test_correct_post(self): + req_json = '{"disk": 1, "partition": 1}' + req = 'POST /software HTTP/1.0\r\nContent-Length:' + \ + str(len(req_json)) + \ + '\r\nContent-Type:application/json\r\n\r\n' + req_json + c = Client() + s = Server() + s.connect() + s.send(req) + client_response = s.recv() + s.stop() + c.stop() + + self.assertRegex(client_response, '^HTTP/1.0 200 OK\r\n*') + client_response = client_response.split('\r\n\r\n') + response_json = json.loads(client_response[1]) + + self.assertIn('partition', response_json) + self.assertIn('software', response_json) + self.assertIn('disk', response_json) + +if __name__ == '__main__': + unittest.main() -- cgit v1.2.3-18-g5258