ceph/qa/tasks/mgr/dashboard/test_settings.py
Alfonso Martínez a682b9d7a4 mgr/dashboard: set rgw credentials: fix api tests
Fixes: https://tracker.ceph.com/issues/44605
Signed-off-by: Alfonso Martínez <almartin@redhat.com>
2021-08-11 08:59:13 +02:00

66 lines
2.0 KiB
Python

# -*- coding: utf-8 -*-
from __future__ import absolute_import
from .helper import DashboardTestCase, JAny, JList, JObj
class SettingsTest(DashboardTestCase):
def setUp(self):
super(SettingsTest, self).setUp()
self.settings = self._get('/api/settings')
def tearDown(self):
self._put(
'/api/settings',
{setting['name']: setting['value']
for setting in self.settings})
def test_list_settings(self):
settings = self._get('/api/settings')
self.assertGreater(len(settings), 10)
self.assertSchema(
settings,
JList(
JObj({
'default': JAny(none=False),
'name': str,
'type': str,
'value': JAny(none=False)
})))
self.assertStatus(200)
def test_get_setting(self):
setting = self._get('/api/settings/rgw-api-access-key')
self.assertSchema(
setting,
JObj({
'default': JAny(none=False),
'name': str,
'type': str,
'value': JAny(none=False)
}))
self.assertStatus(200)
def test_set_setting(self):
self._put('/api/settings/rgw-api-access-key', {'value': 'foo'})
self.assertStatus(200)
value = self._get('/api/settings/rgw-api-access-key')['value']
self.assertEqual('foo', value)
def test_bulk_set(self):
self._put('/api/settings', {
'RGW_API_ACCESS_KEY': 'dummy-key',
'RGW_API_SECRET_KEY': 'dummy-secret',
})
self.assertStatus(200)
access_key = self._get('/api/settings/rgw-api-access-key')['value']
self.assertStatus(200)
self.assertEqual('dummy-key', access_key)
secret_key = self._get('/api/settings/rgw-api-secret-key')['value']
self.assertStatus(200)
self.assertEqual('dummy-secret', secret_key)