aboutsummaryrefslogtreecommitdiffstats
path: root/moonv4/moon_db/tests/unit_python/test_tenant.py
blob: 7e6cfa823b3f31e73d8f19f022fb566d481fdc48 (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
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
# Copyright 2015 Open Platform for NFV Project, Inc. and its contributors
# This software is distributed under the terms and conditions of the 'Apache-2.0'
# license which can be found in the file 'LICENSE' in this package distribution
# or at 'http://www.apache.org/licenses/LICENSE-2.0'.

import moon_db
import uuid

Connector = moon_db.Driver("sql", "mysql+pymysql://moonuser:password@localhost/moon")
Connector.driver.init_db()


def test_get_tenants():
    t = Connector.driver.get_tenants_dict()
    print(t)
    assert type(t) == dict


def test_add_tenant():
    new_tenant = {
        "id": uuid.uuid4().hex,
        "name": "demo",
        "description": uuid.uuid4().hex,
        "intra_authz_extension_id": "",
        "intra_admin_extension_id": "",
    }
    data = Connector.driver.add_tenant_dict(tenant_id=new_tenant['id'],
                                            tenant_dict=new_tenant)
    data_id = list(data.keys())[0]
    assert new_tenant["id"] == data_id
    assert new_tenant["name"] == data[data_id]["name"]
    assert new_tenant["intra_authz_extension_id"] == data[data_id]["intra_authz_extension_id"]
    assert new_tenant["intra_admin_extension_id"] == data[data_id]["intra_admin_extension_id"]
    data = Connector.driver.get_tenants_dict()
    assert data != {}


def test_del_tenant():
    new_tenant = {
        "id": uuid.uuid4().hex,
        "name": "demo",
        "description": uuid.uuid4().hex,
        "intra_authz_extension_id": "",
        "intra_admin_extension_id": "",
    }
    data = Connector.driver.get_tenants_dict()
    number_of_tenant = len(data.keys())
    data = Connector.driver.add_tenant_dict(tenant_id=new_tenant['id'],
                                            tenant_dict=new_tenant)
    data_id = list(data.keys())[0]
    assert new_tenant["name"] == data[data_id]["name"]
    assert new_tenant["intra_authz_extension_id"] == data[data_id]["intra_authz_extension_id"]
    assert new_tenant["intra_admin_extension_id"] == data[data_id]["intra_admin_extension_id"]
    data = Connector.driver.get_tenants_dict()
    assert len(data.keys()) == number_of_tenant+1
    Connector.driver.del_tenant(data_id)
    data = Connector.driver.get_tenants_dict()
    assert len(data.keys()) == number_of_tenant


def test_set_tenant():
    new_tenant = {
        "id": uuid.uuid4().hex,
        "name": "demo",
        "description": uuid.uuid4().hex,
        "intra_authz_extension_id": "123456",
        "intra_admin_extension_id": "0987654",
    }
    data = Connector.driver.get_tenants_dict()
    number_of_tenant = len(data.keys())
    data = Connector.driver.add_tenant_dict(tenant_id=new_tenant['id'],
                                            tenant_dict=new_tenant)
    data_id = list(data.keys())[0]
    assert new_tenant["name"] == data[data_id]["name"]
    assert new_tenant["intra_authz_extension_id"] == data[data_id]["intra_authz_extension_id"]
    assert new_tenant["intra_admin_extension_id"] == data[data_id]["intra_admin_extension_id"]
    data = Connector.driver.get_tenants_dict()
    assert len(data.keys()) == number_of_tenant+1

    new_tenant["name"] = "demo2"
    data = Connector.driver.set_tenant_dict(tenant_id=data_id, tenant_dict=new_tenant)
    data_id = list(data.keys())[0]
    assert new_tenant["name"] == data[data_id]["name"]
    assert new_tenant["intra_authz_extension_id"] == data[data_id]["intra_authz_extension_id"]
    assert new_tenant["intra_admin_extension_id"] == data[data_id]["intra_admin_extension_id"]