summaryrefslogtreecommitdiffstats
path: root/qa/tasks/mgr/dashboard/test_host.py
blob: f9acbeff915fc231986f34df36b745349b9408f4 (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
# -*- coding: utf-8 -*-
from __future__ import absolute_import

from .helper import DashboardTestCase, JList, JObj


class HostControllerTest(DashboardTestCase):

    AUTH_ROLES = ['read-only']

    @DashboardTestCase.RunAs('test', 'test', ['block-manager'])
    def test_access_permissions(self):
        self._get('/api/host')
        self.assertStatus(403)

    def test_host_list(self):
        data = self._get('/api/host')
        self.assertStatus(200)

        for server in data:
            self.assertIn('services', server)
            self.assertIn('hostname', server)
            self.assertIn('ceph_version', server)
            self.assertIsNotNone(server['hostname'])
            self.assertIsNotNone(server['ceph_version'])
            self.assertGreaterEqual(len(server['services']), 1)
            for service in server['services']:
                self.assertIn('type', service)
                self.assertIn('id', service)
                self.assertIsNotNone(service['type'])
                self.assertIsNotNone(service['id'])