summaryrefslogtreecommitdiffstats
path: root/tests/units/test_0018_post_setup.py
blob: 22cc0c69dddec559e62fb1b842352844bf18ce68 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
import requests
import unittest

class TestPostSetupMethods(unittest.TestCase):

    def setUp(self):
        self.url = 'http://localhost:8888/setup'
        self.headers = {'Authorization' : '07b3bfe728954619b58f0107ad73acc1'}
        self.json = { 'clients' : [ '192.168.2.1', '192.168.2.2' ],
                      'type' : 'GPT',
                      'disk' : '1',
                      'cache' : '1',
                      'cache_size' : '0',
                      'partition_setup': [{'partition': '1',
                                           'code': 'LINUX',
                                           'filesystem': 'EMPTY',
                                           'size': '498688',
                                           'format': '0'},
                                          {'partition': '2',
                                           'code': 'LINUX-SWAP',
                                           'filesystem': 'EMPTY',
                                           'size': '199987',
                                           'format': '0'},
                                          {'partition': '3',
                                           'code': 'LINUX',
                                           'filesystem': 'EMPTY',
                                           'size': '31053824',
                                           'format': '0'},
                                          {'partition': '4',
                                           'code': 'EMPTY',
                                           'filesystem': 'EMPTY',
                                           'size': '0',
                                           'format': '0'}] }

    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)

    def test_get(self):
        returned = requests.get(self.url, headers=self.headers)
        self.assertEqual(returned.status_code, 405)

if __name__ == '__main__':
    unittest.main()