From a7d5b9a4b29e3b3d18b3a63bd32b28c1008ec48e Mon Sep 17 00:00:00 2001 From: MohamedAssem Date: Wed, 27 Dec 2017 11:45:11 +0200 Subject: Add keystone tests Change-Id: I0d98547d201e5b7b2b9a240e9e70bc1a9cd29a38 Signed-off-by: MohamedAssem --- python_moondb/tests/unit_python/mock_keystone.py | 12 +++++- python_moondb/tests/unit_python/test_keystone.py | 53 ++++++++++++++++++++++++ 2 files changed, 64 insertions(+), 1 deletion(-) create mode 100644 python_moondb/tests/unit_python/test_keystone.py (limited to 'python_moondb/tests/unit_python') diff --git a/python_moondb/tests/unit_python/mock_keystone.py b/python_moondb/tests/unit_python/mock_keystone.py index c0b26b88..3f262538 100644 --- a/python_moondb/tests/unit_python/mock_keystone.py +++ b/python_moondb/tests/unit_python/mock_keystone.py @@ -20,4 +20,14 @@ def register_keystone(m): json={"users": [{ "id": "1111111111111" }]} - ) \ No newline at end of file + ) + m.register_uri( + 'POST', 'http://keystone:5000/v3/projects/', + json={ + "description": "test_project", + "domain_id": ['domain_id_1'], + "enabled": True, + "is_domain": False, + "name": 'project_1' + } + ) diff --git a/python_moondb/tests/unit_python/test_keystone.py b/python_moondb/tests/unit_python/test_keystone.py new file mode 100644 index 00000000..134bec0d --- /dev/null +++ b/python_moondb/tests/unit_python/test_keystone.py @@ -0,0 +1,53 @@ +import pytest + + +def create_project(tenant_dict): + from python_moondb.core import KeystoneManager + return KeystoneManager.create_project(tenant_dict) + + +def list_projects(): + from python_moondb.core import KeystoneManager + return KeystoneManager.list_projects() + + +def create_user(subject_dict): + from python_moondb.core import KeystoneManager + return KeystoneManager.create_user(subject_dict) + + +def test_create_project(): + tenant_dict = { + "description": "test_project", + "domain_id": ['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_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) + + +def test_create_user(): + subject_dict = { + "password": "password", + "domain_id": ['domain_id_1'], + "enabled": True, + "project": 'test_project', + "name": 'user_id_1' + } + user = create_user(subject_dict) + assert user -- cgit 1.2.3-korg