Add ns pkg get logic 07/7707/1
authorfujinhua <fu.jinhua@zte.com.cn>
Wed, 16 Aug 2017 09:50:46 +0000 (17:50 +0800)
committerfujinhua <fu.jinhua@zte.com.cn>
Wed, 16 Aug 2017 09:50:46 +0000 (17:50 +0800)
Change-Id: Ibea82afc9fe7261d8246718130bdc0f576d9b684
Issue-Id: VFC-101
Signed-off-by: fujinhua <fu.jinhua@zte.com.cn>
lcm/packages/tests/test_sdc_ns.py
lcm/packages/views.py

index c932759..d0cc6a9 100644 (file)
@@ -483,6 +483,33 @@ class TestSdcNsPackage(TestCase):
         self.assertEqual("failed", resp.data["status"])
         self.assertEqual("CSAR(8) is in using, cannot be deleted.", resp.data["statusDescription"])
 
+    def test_ns_pkg_get_all(self):
+        NSDModel(id="13", nsd_id="2", vendor="3", version="4").save()
+
+        resp = self.client.get("/api/nslcm/v1/nspackage")
+        self.assertEqual(resp.status_code, status.HTTP_200_OK)
+        self.assertEqual({"csars": [{"csarId":"13", "nsdId": "2"}]}, resp.data)
+
+    def test_ns_pkg_get_one(self):
+        NSDModel(id="14", nsd_id="2", vendor="3", version="4").save()
+        NSInstModel(id="1", nspackage_id="14", name="11").save()
+
+        resp = self.client.get("/api/nslcm/v1/nspackage/14")
+        self.assertEqual(resp.status_code, status.HTTP_200_OK)
+        self.assertEqual({"csarId": "14", 
+            "packageInfo": {
+                "nsdId": "2",
+                "nsdProvider": "3",
+                "nsdVersion": "4"
+            }, 
+            "nsInstanceInfo": [{
+                "nsInstanceId": "1", "nsInstanceName": "11"
+            }]}, resp.data)
+
+
+        
+
+
 
 
 
index 119eed4..44c1c76 100644 (file)
@@ -28,17 +28,19 @@ logger = logging.getLogger(__name__)
 @api_view(http_method_names=['POST', 'GET'])
 def ns_distribute_get(request, *args, **kwargs):
     logger.debug("Enter %s, method is %s", fun_name(), request.method)
+    ret, normal_status = None, None
     if request.method == 'GET':
         ret = sdc_ns_package.SdcNsPackage().get_csars()
-        logger.debug("csars=%s", ret)
-        return Response(data=ret, status=status.HTTP_200_OK)
-    csar_id = ignore_case_get(request.data, "csarId")
-    logger.debug("csar_id is %s", csar_id)
-    ret = sdc_ns_package.ns_on_distribute(csar_id)
+        normal_status = status.HTTP_200_OK
+    else:
+        csar_id = ignore_case_get(request.data, "csarId")
+        logger.debug("csar_id is %s", csar_id)
+        ret = sdc_ns_package.ns_on_distribute(csar_id)      
+        normal_status = status.HTTP_202_ACCEPTED
     logger.debug("Leave %s, Return value is %s", fun_name(), ret)
     if ret[0] != 0:
         return Response(data={'error': ret[1]}, status=status.HTTP_500_INTERNAL_SERVER_ERROR)
-    return Response(data=ret[1], status=status.HTTP_202_ACCEPTED)
+    return Response(data=ret[1], status=normal_status)
 
 @api_view(http_method_names=['GET', 'DELETE'])
 def ns_rd_csar(request, *args, **kwargs):