]> git.proxmox.com Git - ceph.git/blame - ceph/qa/tasks/mgr/dashboard/test_settings.py
update source to Ceph Pacific 16.2.2
[ceph.git] / ceph / qa / tasks / mgr / dashboard / test_settings.py
CommitLineData
11fdf7f2
TL
1# -*- coding: utf-8 -*-
2
3from __future__ import absolute_import
4
f67539c2 5from .helper import DashboardTestCase, JAny, JList, JObj
11fdf7f2
TL
6
7
8class SettingsTest(DashboardTestCase):
9 def setUp(self):
9f95a23c 10 super(SettingsTest, self).setUp()
11fdf7f2
TL
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)