summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tests/units/test_0026_post_mode.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/tests/units/test_0026_post_mode.py b/tests/units/test_0026_post_mode.py
new file mode 100644
index 0000000..23cb957
--- /dev/null
+++ b/tests/units/test_0026_post_mode.py
@@ -0,0 +1,30 @@
+import requests
+import unittest
+
+class TestPostModeMethods(unittest.TestCase):
+
+ def setUp(self):
+ self.url = 'http://localhost:8888/mode'
+ self.headers = {'Authorization' : '07b3bfe728954619b58f0107ad73acc1'}
+ self.json = { 'clients' : [ '192.168.2.1', '192.168.2.2' ],
+ 'mode' : 'pxe' }
+
+ def test_post(self):
+ returned = requests.post(self.url, headers=self.headers, json=self.json)
+ self.assertEqual(returned.status_code, 200)
+
+ def test_no_payload(self):
+ returned = requests.post(self.url, headers=self.headers, json=None)
+ self.assertEqual(returned.status_code, 400)
+
+ def test_malformed_payload(self):
+ for parameter in self.json:
+ malformed_payload = self.json.copy()
+ malformed_payload.pop(parameter)
+ returned = requests.post(self.url,
+ headers=self.headers,
+ json=malformed_payload)
+ self.assertEqual(returned.status_code, 400)
+
+if __name__ == '__main__':
+ unittest.main()