aboutsummaryrefslogtreecommitdiffstats
path: root/moon_manager/tests/unit_python/api/test_nova.py
blob: 10118cc340e2a15c478f6eabb51fbb421759db29 (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
52
53
54
55
56
57
58
# Software Name: MOON

# Version: 5.4

# SPDX-FileCopyrightText: Copyright (c) 2018-2020 Orange and its contributors
# SPDX-License-Identifier: Apache-2.0

# This software is distributed under the 'Apache License 2.0',
# the text of which is available at 'http://www.apache.org/licenses/LICENSE-2.0.txt'
# or see the "LICENSE" file for more details.



def create_project(tenant_dict):
    from moon_manager.pip_driver import InformationManager
    return InformationManager["objects"][0].create_project(**tenant_dict)


def list_projects():
    from moon_manager.pip_driver import InformationManager
    return InformationManager["objects"][0].get_projects()


def list_objects():
    from moon_manager.pip_driver import InformationManager
    print(f"IM : {InformationManager['objects'][0].driver.__dict__}")
    return InformationManager["objects"][0].get_items()


def test_create_project():
    tenant_dict = {
        "description": "test_project",
        "domain": ['domain_id_1'],
        "enabled": True,
        "is_domain": False,
        "name": 'project_1'
    }
    project = create_project(tenant_dict)
    assert project
    assert project.get('name') == tenant_dict.get('name')


def test_list_objects():
    objects = list_objects()
    assert objects
    assert objects["servers"][0].get('name') == "vm1"

#  TODO TO BE UPDATED
# def test_create_project_without_name():
#     tenant_dict = {
#         "description": "test_project",
#         "domain_id": ['domain_id_1'],
#         "enabled": True,
#         "is_domain": False,
#     }
#     with pytest.raises(Exception) as exception_info:
#         create_project(tenant_dict)
#     assert '400: Keystone project error' == str(exception_info.value)