diff options
author | Fu Jinhua <fu.jinhua@zte.com.cn> | 2018-08-23 04:05:41 +0000 |
---|---|---|
committer | Gerrit Code Review <gerrit@onap.org> | 2018-08-23 04:05:41 +0000 |
commit | 126717bdd6faf6e46d9bf8be9e6d08333504f8be (patch) | |
tree | 71f87aeeaab60c15099820199f900f6928de4ca5 | |
parent | 55d065515532b09de632bd05b088f33b4ba5fbed (diff) | |
parent | bf6cb8aaf21802d03292b5c24e9b54480da5feb7 (diff) |
Merge "Ns descriptor related stuffs."
-rw-r--r-- | catalog/packages/biz/nspackage.py (renamed from catalog/packages/biz/ns_package.py) | 0 | ||||
-rw-r--r-- | catalog/packages/tests/test_pnf_descriptor.py | 80 | ||||
-rw-r--r-- | catalog/packages/views/catalog_views.py | 13 |
3 files changed, 86 insertions, 7 deletions
diff --git a/catalog/packages/biz/ns_package.py b/catalog/packages/biz/nspackage.py index cf1f2cd5..cf1f2cd5 100644 --- a/catalog/packages/biz/ns_package.py +++ b/catalog/packages/biz/nspackage.py diff --git a/catalog/packages/tests/test_pnf_descriptor.py b/catalog/packages/tests/test_pnf_descriptor.py new file mode 100644 index 00000000..2761d5dc --- /dev/null +++ b/catalog/packages/tests/test_pnf_descriptor.py @@ -0,0 +1,80 @@ +# Copyright 2017 ZTE Corporation. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +from django.test import TestCase +from rest_framework import status +from rest_framework.test import APIClient + + +class TestPnfDescriptor(TestCase): + def setUp(self): + self.client = APIClient() + + def tearDown(self): + pass + + def test_pnfd_create_normal(self): + reqest_data = { + 'userDefinedData': { + 'key1': 'value1', + 'key2': 'value2', + 'key3': 'value3', + } + } + expected_reponse_data = { + 'pnfdOnboardingState': 'CREATED', + 'pnfdUsageState': 'NOT_IN_USE', + 'userDefinedData': { + 'key1': 'value1', + 'key2': 'value2', + 'key3': 'value3', + }, + '_links': None + } + response = self.client.post( + '/api/nsd/v1/pnf_descriptors', + data=reqest_data, + format='json' + ) + response.data.pop('id') + self.assertEqual(response.status_code, status.HTTP_201_CREATED) + self.assertEqual(expected_reponse_data, response.data) + + def test_query_multiple_pnfds_normal(self): + pass + + def test_query_single_pnfd_normal(self): + pass + + def test_delete_single_pnfd_normal(self): + pass + + def test_pnfd_content_upload_normal(self): + with open('pnfd_content.txt', 'wb') as fp: + fp.write('test') + + with open('pnfd_content.txt', 'rb') as fp: + resp = self.client.put( + "/api/nsd/v1/pnf_descriptors/22/pnfd_content", + {'file': fp}, + ) + self.assertEqual(resp.status_code, status.HTTP_204_NO_CONTENT) + self.assertEqual({}, resp.data) + + os.remove('pnfd_content.txt') + + def test_pnfd_content_upload_failure(self): + pass diff --git a/catalog/packages/views/catalog_views.py b/catalog/packages/views/catalog_views.py index b735cb56..157af9fd 100644 --- a/catalog/packages/views/catalog_views.py +++ b/catalog/packages/views/catalog_views.py @@ -20,8 +20,7 @@ from drf_yasg.utils import no_body, swagger_auto_schema from rest_framework import status from rest_framework.decorators import api_view from rest_framework.response import Response - -from catalog.packages.biz import vnfpackage, ns_package +from catalog.packages.biz import vnfpackage, nspackage from catalog.packages.serializers.catalog_serializers import InternalErrorRequestSerializer from catalog.packages.serializers.catalog_serializers import NfPackageDistributeRequestSerializer from catalog.packages.serializers.catalog_serializers import NfPackageSerializer @@ -60,7 +59,7 @@ def nspackages_rc(request, *args, **kwargs): if request.method == 'GET': # Gets ns package list - ret = ns_package.ns_get_csars() + ret = nspackage.ns_get_csars() normal_status = status.HTTP_200_OK if ret[0] == 0: @@ -78,7 +77,7 @@ def nspackages_rc(request, *args, **kwargs): csar_id = ignore_case_get(request.data, "csarId") logger.debug("csar_id is %s", csar_id) - ret = ns_package.ns_on_distribute(csar_id) + ret = nspackage.ns_on_distribute(csar_id) normal_status = status.HTTP_202_ACCEPTED logger.debug("Leave %s, Return value is %s", fun_name(), ret) @@ -190,7 +189,7 @@ def ns_rd_csar(request, *args, **kwargs): fun_name(), request.method, csar_id) ret, normal_status, response_serializer, validation_error = None, None, None, None if request.method == 'GET': - ret = ns_package.ns_get_csar(csar_id) + ret = nspackage.ns_get_csar(csar_id) normal_status = status.HTTP_200_OK if ret[0] == 0: response_serializer = NsPackageSerializer(data=ret[1]) @@ -198,7 +197,7 @@ def ns_rd_csar(request, *args, **kwargs): if validation_error: return validation_error elif request.method == 'DELETE': - ret = ns_package.ns_delete_csar(csar_id) + ret = nspackage.ns_delete_csar(csar_id) normal_status = status.HTTP_200_OK logger.info("Leave %s, Return value is %s", fun_name(), ret) if ret[0] != 0: @@ -291,7 +290,7 @@ def ns_model_parser(request, *args, **kwargs): fun_name(), csar_id, inputs) - ret = ns_package.parse_nsd(csar_id, inputs) + ret = nspackage.parse_nsd(csar_id, inputs) logger.info("Leave %s, Return value is %s", fun_name(), ret) if ret[0] != 0: return Response( |