]> git.proxmox.com Git - ceph.git/blob - ceph/qa/tasks/mgr/dashboard/test_settings.py
bump version to 15.2.4-pve1
[ceph.git] / ceph / qa / tasks / mgr / dashboard / test_settings.py
1 # -*- coding: utf-8 -*-
2
3 from __future__ import absolute_import
4
5 from tasks.mgr.dashboard.helper import DashboardTestCase, JList, JObj, JAny
6
7
8 class SettingsTest(DashboardTestCase):
9 def setUp(self):
10 super(SettingsTest, self).setUp()
11 self.settings = self._get('/api/settings')
12
13 def tearDown(self):
14 self._put(
15 '/api/settings',
16 {setting['name']: setting['value']
17 for setting in self.settings})
18
19 def test_list_settings(self):
20 settings = self._get('/api/settings')
21 self.assertGreater(len(settings), 10)
22 self.assertSchema(
23 settings,
24 JList(
25 JObj({
26 'default': JAny(none=False),
27 'name': str,
28 'type': str,
29 'value': JAny(none=False)
30 })))
31 self.assertStatus(200)
32
33 def test_get_setting(self):
34 setting = self._get('/api/settings/rgw-api-access-key')
35 self.assertSchema(
36 setting,
37 JObj({
38 'default': JAny(none=False),
39 'name': str,
40 'type': str,
41 'value': JAny(none=False)
42 }))
43 self.assertStatus(200)
44
45 def test_set_setting(self):
46 self._put('/api/settings/rgw-api-access-key', {'value': 'foo'})
47 self.assertStatus(200)
48
49 value = self._get('/api/settings/rgw-api-access-key')['value']
50 self.assertEqual('foo', value)
51
52 def test_bulk_set(self):
53 self._put('/api/settings', {
54 'RGW_API_HOST': 'somehost',
55 'RGW_API_PORT': 7777,
56 })
57 self.assertStatus(200)
58
59 host = self._get('/api/settings/rgw-api-host')['value']
60 self.assertStatus(200)
61 self.assertEqual('somehost', host)
62
63 port = self._get('/api/settings/rgw-api-port')['value']
64 self.assertStatus(200)
65 self.assertEqual(7777, port)