| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394 |
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- import requests
- import json
- import unittest
- __author__ = 'James Iter'
- __date__ = '2017/4/3'
- __contact__ = 'james.iter.cn@gmail.com'
- __copyright__ = '(c) 2017 by James Iter.'
- class TestConfig(unittest.TestCase):
- base_url = 'http://127.0.0.1:8008/api'
- config_id = 0
- def setUp(self):
- pass
- def tearDown(self):
- pass
- # 创建 JimV 配置
- def test_11_create(self):
- payload = {
- "glusterfs_volume": "gv0",
- "vm_network": "net-br0",
- "vm_manage_network": "net-br0",
- "start_ip": "10.10.3.1",
- "end_ip": "10.10.6.254",
- "start_vnc_port": 15900,
- "netmask": "255.255.240.0",
- "gateway": "10.10.15.254",
- "dns1": "10.1.17.1",
- "dns2": "223.5.5.5",
- "rsa_private": "",
- "rsa_public": ""
- }
- url = TestConfig.base_url + '/config'
- headers = {'content-type': 'application/json'}
- r = requests.post(url, data=json.dumps(payload), headers=headers)
- j_r = json.loads(r.content)
- print json.dumps(j_r, ensure_ascii=False)
- TestConfig.config_id = j_r['data']['id']
- self.assertEqual('200', j_r['state']['code'])
- # 获取配置
- def test_12_get(self):
- url = TestConfig.base_url + '/config'
- headers = {'content-type': 'application/json'}
- r = requests.get(url, headers=headers)
- j_r = json.loads(r.content)
- print json.dumps(j_r, ensure_ascii=False)
- self.assertEqual('200', j_r['state']['code'])
- # 更新配置
- def test_13_update(self):
- payload = {
- "rsa_public": "what?"
- }
- url = TestConfig.base_url + '/config'
- headers = {'content-type': 'application/json'}
- r = requests.patch(url, data=json.dumps(payload), headers=headers)
- j_r = json.loads(r.content)
- print json.dumps(j_r, ensure_ascii=False)
- self.assertEqual('200', j_r['state']['code'])
- # 校验更新结果
- def test_14_get(self):
- url = TestConfig.base_url + '/config'
- headers = {'content-type': 'application/json'}
- r = requests.get(url, headers=headers)
- j_r = json.loads(r.content)
- print json.dumps(j_r, ensure_ascii=False)
- self.assertEqual('200', j_r['state']['code'])
- self.assertEqual('what?', j_r['data']['rsa_public'])
- # 删除配置
- def test_15_delete(self):
- url = TestConfig.base_url + '/config'
- headers = {'content-type': 'application/json'}
- r = requests.delete(url, headers=headers)
- self.assertEqual(405, r.status_code)
- if __name__ == '__main__':
- unittest.main()
|