source: ogServer-Git/tests/units/test_0004_post_shell_run.py

Last change on this file was 1cdbc5f, checked in by OpenGnSys Support Team <soporte-og@…>, 4 years ago

#915 Test malformed payload for POST /shell/run

This test covers requests that do not contain 1 of the parameters in their
payloads.

  • Property mode set to 100644
File size: 1.2 KB
Line 
1import requests
2import unittest
3
4class TestPostShellRunMethods(unittest.TestCase):
5
6    def setUp(self):
7        self.url = 'http://localhost:8888/shell/run'
8        self.headers = {'Authorization' : '07b3bfe728954619b58f0107ad73acc1'}
9        self.json = { 'clients' : [ '192.168.2.1', '192.168.2.2' ],
10                      'run' : 'ls',
11                      'echo': True}
12
13    def test_post(self):
14        returned = requests.post(self.url, headers=self.headers, json=self.json)
15        self.assertEqual(returned.status_code, 200)
16
17    def test_no_payload(self):
18        returned = requests.post(self.url, headers=self.headers, json=None)
19        self.assertEqual(returned.status_code, 400)
20
21    def test_malformed_payload(self):
22        for parameter in self.json:
23            malformed_payload = self.json.copy()
24            malformed_payload.pop(parameter)
25            returned = requests.post(self.url,
26                                     headers=self.headers,
27                                     json=malformed_payload)
28            self.assertEqual(returned.status_code, 400)
29
30    def test_get(self):
31        returned = requests.get(self.url, headers=self.headers)
32        self.assertEqual(returned.status_code, 405)
33
34if __name__ == '__main__':
35    unittest.main()
Note: See TracBrowser for help on using the repository browser.