X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=blobdiff_plain;f=tests%2Funit%2Ftest_ocloud.py;h=a3c0f67faf31407d5c6a7e580b8f68877c8befef;hb=refs%2Fchanges%2F29%2F9429%2F2;hp=1ae4f5edaf190973e9ec883fecd139013b80c496;hpb=2e17b150a5df5ecd11cf668e7cccea021a03ab7b;p=pti%2Fo2.git diff --git a/tests/unit/test_ocloud.py b/tests/unit/test_ocloud.py index 1ae4f5e..a3c0f67 100644 --- a/tests/unit/test_ocloud.py +++ b/tests/unit/test_ocloud.py @@ -14,9 +14,8 @@ import uuid from unittest.mock import MagicMock -from o2dms.domain import dms -from o2ims.domain import ocloud, subscription_obj, configuration_obj +from o2ims.domain import ocloud, subscription_obj from o2ims.domain import resource_type as rt from o2ims.views import ocloud_view from o2common.config import config @@ -95,15 +94,6 @@ def test_new_subscription(): subscription1.subscriptionId == subscription_id1 -def test_new_configuration(): - configuration_id1 = str(uuid.uuid4()) - configuration1 = configuration_obj.Configuration( - configuration_id1, "https://callback/uri/write/here", - "SMO") - assert configuration_id1 is not None and\ - configuration1.configurationId == configuration_id1 - - def test_view_olcouds(mock_uow): session, uow = mock_uow @@ -144,11 +134,17 @@ def test_view_resource_types(mock_uow): restype1 = MagicMock() restype1.serialize.return_value = { "resourceTypeId": resource_type_id1} - session.return_value.query.return_value = [restype1] - resource_type_list = ocloud_view.resource_types(uow) - assert str(resource_type_list[0].get( - "resourceTypeId")) == resource_type_id1 + order_by = MagicMock() + order_by.count.return_value = 1 + order_by.limit.return_value.offset.return_value = [restype1] + session.return_value.query.return_value.filter.return_value.\ + order_by.return_value = order_by + + result = ocloud_view.resource_types(uow) + assert result['count'] == 1 + ret_list = result['results'] + assert str(ret_list[0].get("resourceTypeId")) == resource_type_id1 def test_view_resource_type_one(mock_uow): @@ -178,11 +174,17 @@ def test_view_resource_pools(mock_uow): respool1 = MagicMock() respool1.serialize.return_value = { "resourcePoolId": resource_pool_id1} - session.return_value.query.return_value = [respool1] - resource_pool_list = ocloud_view.resource_pools(uow) - assert str(resource_pool_list[0].get( - "resourcePoolId")) == resource_pool_id1 + order_by = MagicMock() + order_by.count.return_value = 1 + order_by.limit.return_value.offset.return_value = [respool1] + session.return_value.query.return_value.filter.return_value.\ + order_by.return_value = order_by + + result = ocloud_view.resource_pools(uow) + assert result['count'] == 1 + ret_list = result['results'] + assert str(ret_list[0].get("resourcePoolId")) == resource_pool_id1 def test_view_resource_pool_one(mock_uow): @@ -216,9 +218,18 @@ def test_view_resources(mock_uow): "resourceId": resource_id1, "resourcePoolId": resource_pool_id1 } - session.return_value.query.return_value.filter_by.return_value = [res1] - resource_list = ocloud_view.resources(resource_pool_id1, uow) + order_by = MagicMock() + order_by.count.return_value = 1 + order_by.limit.return_value.offset.return_value = [res1] + session.return_value.query.return_value.filter.return_value.\ + order_by.return_value = order_by + # TODO: workaround for sqlalchemy not mapping with resource object + setattr(ocloud.Resource, 'resourcePoolId', '') + + result = ocloud_view.resources(resource_pool_id1, uow) + assert result['count'] == 1 + resource_list = result['results'] assert str(resource_list[0].get("resourceId")) == resource_id1 assert str(resource_list[0].get("resourcePoolId")) == resource_pool_id1 @@ -253,11 +264,18 @@ def test_view_deployment_managers(mock_uow): dm1.serialize.return_value = { "deploymentManagerId": deployment_manager_id1, } - session.return_value.query.return_value = [dm1] - deployment_manager_list = ocloud_view.deployment_managers(uow) - assert str(deployment_manager_list[0].get( - "deploymentManagerId")) == deployment_manager_id1 + order_by = MagicMock() + order_by.count.return_value = 1 + order_by.limit.return_value.offset.return_value = [dm1] + session.return_value.query.return_value.filter.return_value.\ + order_by.return_value = order_by + + result = ocloud_view.deployment_managers(uow) + assert result['count'] == 1 + ret_list = result['results'] + assert str(ret_list[0].get("deploymentManagerId") + ) == deployment_manager_id1 def test_view_deployment_manager_one(mock_uow): @@ -276,7 +294,7 @@ def test_view_deployment_manager_one(mock_uow): session.return_value.query.return_value.filter_by.return_value.first.\ return_value.serialize.return_value = { "deploymentManagerId": deployment_manager_id1, - "deploymentManagementServiceEndpoint": dms_endpoint, + "serviceUri": dms_endpoint, "profile": {} } @@ -286,11 +304,11 @@ def test_view_deployment_manager_one(mock_uow): assert str(deployment_manager_res.get( "deploymentManagerId")) == deployment_manager_id1 assert str(deployment_manager_res.get( - 'deploymentManagementServiceEndpoint')) == dms_endpoint + 'serviceUri')) == dms_endpoint assert deployment_manager_res.get('profile') is None - # profile sol0018 - profileName = 'sol0018' + # profile sol018 + profileName = ocloud.DeploymentManagerProfileSOL018 cluster_endpoint = "https://test_k8s:6443" session.return_value.query.return_value.filter_by.return_value.first.\ return_value.serialize.return_value['profile'] = { @@ -299,10 +317,20 @@ def test_view_deployment_manager_one(mock_uow): deployment_manager_res = ocloud_view.deployment_manager_one( deployment_manager_id1, uow, profile=profileName) assert str(deployment_manager_res.get( - 'deploymentManagementServiceEndpoint')) == cluster_endpoint + 'serviceUri')) == cluster_endpoint assert str(deployment_manager_res.get( "profileName")) == profileName + # profile wrong name + profileName = 'wrong_profile' + session.return_value.query.return_value.filter_by.return_value.first.\ + return_value.serialize.return_value['profile'] = { + "cluster_api_endpoint": cluster_endpoint + } + deployment_manager_res = ocloud_view.deployment_manager_one( + deployment_manager_id1, uow, profile=profileName) + assert deployment_manager_res is None + def test_view_subscriptions(mock_uow): session, uow = mock_uow @@ -312,11 +340,17 @@ def test_view_subscriptions(mock_uow): sub1.serialize.return_value = { "subscriptionId": subscription_id1, } - session.return_value.query.return_value = [sub1] - subscription_list = ocloud_view.subscriptions(uow) - assert str(subscription_list[0].get( - "subscriptionId")) == subscription_id1 + order_by = MagicMock() + order_by.count.return_value = 1 + order_by.limit.return_value.offset.return_value = [sub1] + session.return_value.query.return_value.filter.return_value.\ + order_by.return_value = order_by + + result = ocloud_view.subscriptions(uow) + assert result['count'] == 1 + ret_list = result['results'] + assert str(ret_list[0].get("subscriptionId")) == subscription_id1 def test_view_subscription_one(mock_uow): @@ -344,8 +378,14 @@ def test_view_subscription_one(mock_uow): def test_flask_get_list(mock_flask_uow): session, app = mock_flask_uow - session.query.return_value = [] - apibase = config.get_o2ims_api_base() + order_by = MagicMock() + order_by.count.return_value = 0 + order_by.limit.return_value.offset.return_value = [] + session.return_value.query.return_value.filter.return_value.\ + order_by.return_value = order_by + apibase = config.get_o2ims_api_base() + '/v1' + # TODO: workaround for sqlalchemy not mapping with resource object + setattr(ocloud.Resource, 'resourcePoolId', '') with app.test_client() as client: # Get list and return empty list @@ -373,7 +413,7 @@ def test_flask_get_one(mock_flask_uow): session.return_value.query.return_value.filter_by.return_value.\ first.return_value = None - apibase = config.get_o2ims_api_base() + apibase = config.get_o2ims_api_base() + '/v1' with app.test_client() as client: # Get one and return 404 @@ -406,7 +446,7 @@ def test_flask_get_one(mock_flask_uow): def test_flask_post(mock_flask_uow): session, app = mock_flask_uow - apibase = config.get_o2ims_api_base() + apibase = config.get_o2ims_api_base() + '/v1' with app.test_client() as client: session.return_value.execute.return_value = [] @@ -423,7 +463,7 @@ def test_flask_post(mock_flask_uow): def test_flask_delete(mock_flask_uow): session, app = mock_flask_uow - apibase = config.get_o2ims_api_base() + apibase = config.get_o2ims_api_base() + '/v1' with app.test_client() as client: session.return_value.execute.return_value.first.return_value = {} @@ -435,7 +475,7 @@ def test_flask_delete(mock_flask_uow): def test_flask_not_allowed(mock_flask_uow): _, app = mock_flask_uow - apibase = config.get_o2ims_api_base() + apibase = config.get_o2ims_api_base() + '/v1' with app.test_client() as client: # Testing resource type not support method