summaryrefslogtreecommitdiff
path: root/tests/test_utils.py
blob: c8d249666688528bb25680a9a953a9111a23e9c3 (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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
# vim: tabstop=4 shiftwidth=4 softtabstop=4

from openstackclient import utils as os_utils
from tests import utils

OBJ_LIST = [
                {
                    'id': '123',
                    'name': 'foo',
                    'extra': {
                        'desc': 'foo fu',
                        'status': 'present',
                    }
                },
                {
                    'id': 'abc',
                    'name': 'bar',
                    'extra': {
                        'desc': 'babar',
                        'status': 'waiting',
                    }
                }
            ]


class Obj(object):

    def __init__(self):
        pass


class UtilsTest(utils.TestCase):

    def setUp(self):
        super(UtilsTest, self).setUp()
        self.objs = []
        for o in OBJ_LIST:
            obj = Obj()
            for k in o.keys():
                setattr(obj, k, o.get(k))
            self.objs.append(obj)

    def tearDown(self):
        super(UtilsTest, self).tearDown()
        self.objs = []

    def test_expand_meta(self):
        ret = os_utils.expand_meta(self.objs, 'extra')
        assert (getattr(ret[0], 'desc') == 'foo fu')
        assert (getattr(ret[0], 'status') == 'present')
        assert (getattr(ret[0], 'extra', 'qaz') == 'qaz')