Fix bugs for ztevnfmdriver
[vfc/nfvo/driver/vnfm/svnfm.git] / zte / vmanager / driver / interfaces / tests.py
index da41484..094e0da 100644 (file)
@@ -130,6 +130,7 @@ class InterfacesTest(TestCase):
         r2 = [0, json.JSONEncoder().encode(vnfd_info), "200"]
         r3 = [0, json.JSONEncoder().encode(packageInfo), "200"]
         mock_call_req.side_effect = [r1, r2, r3, ret]
+        mock_call_req.side_effect = [r1, ret]
 
         req_data = {
             'vnfInstanceName': 'VFW_f88c0cb7-512a-44c4-bd09-891663f19367',
@@ -174,12 +175,14 @@ class InterfacesTest(TestCase):
             "password": "admin",
             "createTime": "2016-07-06 15:33:18"}), "200"]
 
-        r2 = [0, json.JSONEncoder().encode(
-            {"vnfInstanceId": "1", "jobId": "1"}), "200"]
+        r2 = [0, json.JSONEncoder().encode({"vnfInstanceId": "1", "jobId": "1"}), "200"]
         mock_call_req.side_effect = [r1, r2]
-
+        req_data = {
+            "terminationType": "GRACEFUL",
+            "gracefulTerminationTimeout": 120
+        }
         response = self.client.post(
-            "/api/ztevnfmdriver/v1/ztevnfmid/vnfs/vbras_innstance_id/terminate")
+            "/api/ztevnfmdriver/v1/ztevnfmid/vnfs/1/terminate", data=req_data)
 
         self.assertEqual(status.HTTP_200_OK, response.status_code)
         expect_resp_data = {"jobId": "1", "vnfInstanceId": "1"}
@@ -229,42 +232,41 @@ class InterfacesTest(TestCase):
             "description": ""
         }
         resp_body = {
-            "responsedescriptor": {
+            "responseDescriptor": {
                 "status": "processing",
-                "responsehistorylist": [
+                "responseHistoryList": [
                     {
                         "status": "error",
                         "progress": 255,
-                        "errorcode": "",
-                        "responseid": 20,
-                        "statusdescription": "'JsonParser' object has no attribute 'parser_info'"}],
-                "responseid": 21,
-                "errorcode": "",
+                        "errorCode": "",
+                        "responseId": 20,
+                        "statusDescription": "'JsonParser' object has no attribute 'parser_info'"}],
+                "responseId": 21,
+                "errorCode": "",
                 "progress": 40,
-                "statusdescription": "Create nf apply resource failed"},
-            "jobid": "NF-CREATE-11-ec6c2f2a-9f48-11e6-9405-fa163e91c2f9"}
+                "statusDescription": "Create nf apply resource failed"},
+            "jobId": "NF-CREATE-11-ec6c2f2a-9f48-11e6-9405-fa163e91c2f9"}
         r1 = [0, json.JSONEncoder().encode(vnfm_info), '200']
         r2 = [0, json.JSONEncoder().encode(resp_body), '200']
         mock_call_req.side_effect = [r1, r2]
         response = self.client.get(
             "/api/ztevnfmdriver/v1/{vnfmid}/jobs/{jobid}?responseId={responseId}".format(
                 vnfmid=vnfm_info["vnfmId"],
-                jobid=resp_body["jobid"],
-                responseId=resp_body["responsedescriptor"]["responseid"]))
+                jobid=resp_body["jobId"],
+                responseId=resp_body["responseDescriptor"]["responseId"]))
 
         self.assertEqual(status.HTTP_200_OK, response.status_code)
 
-        expect_resp_data = resp_body
-        self.assertDictEqual(expect_resp_data, response.data)
+        self.assertDictEqual(resp_body, response.data)
 
     @mock.patch.object(restcall, 'call_req')
     def test_grantvnf_005(self, mock_call_req):
         grant_data = {
             "vim": {
                 "accessinfo": {
-                    "tenant": "admin"
+                    "tenant": "mano"
                 },
-                "vimid": "516cee95-e8ca-4d26-9268-38e343c2e31e"
+                "vimid": "1"
             }
         }
         ret = [0, json.JSONEncoder().encode(grant_data), '201']
@@ -281,27 +283,30 @@ class InterfacesTest(TestCase):
             "operationright": "0",
             "vmlist": [
                 {
-                    "vmflavor": "SMP",
-                    "vmnumber": "3"
-                },
-                {
-                    "vmflavor": "CMP",
-                    "vmnumber": "3"
+                    "VMNumber": 1,
+                    "VMFlavor": "VDU_S_CDB_51",
+                    "vimid": "",
+                    "tenant": ""
+                }, {
+                    "VMNumber": 1,
+                    "VMFlavor": "VDU_M_SLB_42",
+                    "vimid": "",
+                    "tenant": ""
                 }
             ]
         }
 
         mock_call_req.return_value = ret
         response = self.client.put(
-            "/api/ztevnfmdriver/v1/resource/grant",
+            "/v1/resource/grant",
             data=json.dumps(req_data),
             content_type='application/json')
 
         self.assertEqual(status.HTTP_201_CREATED, response.status_code)
 
         expect_resp_data = {
-            "vimid": "516cee95-e8ca-4d26-9268-38e343c2e31e",
-            "tenant": "admin"}
+            "vimid": "1",
+            "tenant": "mano"}
         self.assertDictEqual(expect_resp_data, response.data)
 
     @mock.patch.object(restcall, 'call_req')
@@ -340,7 +345,7 @@ class InterfacesTest(TestCase):
 
         mock_call_req.side_effect = [r1]
         response = self.client.post(
-            "/api/ztevnfmdriver/v1/vnfs/lifecyclechangesnotification",
+            "/v1/vnfs/lifecyclechangesnotification",
             data=json.dumps(notify_req_data),
             content_type='application/json')
 
@@ -351,7 +356,10 @@ class InterfacesTest(TestCase):
 
     @mock.patch.object(restcall, 'call_req')
     def test_scale(self, mock_call_req):
-        job_info = {"jobid": "801", "nfInstanceId": "101"}
+        job_info = {
+            "jobId": "801",
+            "vnfInstanceId": "101"
+        }
         vnfm_info = {
             "userName": "admin",
             "vendor": "ZTE",
@@ -435,8 +443,8 @@ class InterfacesTest(TestCase):
     @mock.patch.object(restcall, 'call_req')
     def test_heal(self, mock_call_req):
         job_info = {
-            "jobid": "12234455",
-            "nfInstanceId": "10144445666"
+            "jobId": "12234455",
+            "vnfInstanceId": "10144445666"
         }
         vnfm_info = {
             "userName": "admin",
@@ -473,14 +481,18 @@ class InterfacesTest(TestCase):
             'isgrace': 'force'
         }
 
-        response = self.client.post(
-            "/api/ztevnfmdriver/v1/200/vnfs/201/heal",
-            data=json.dumps(heal_vnf_data),
-            content_type='application/json')
+        response = self.client.post("/api/ztevnfmdriver/v1/200/vnfs/201/heal", data=json.dumps(heal_vnf_data),
+                                    content_type='application/json')
 
         self.assertEqual(status.HTTP_202_ACCEPTED, response.status_code)
         self.assertDictEqual(job_info, response.data)
 
+    def test_health_check(self):
+        response = self.client.get("/api/ztevnfmdriver/v1/health_check")
+        self.assertEqual(status.HTTP_200_OK, response.status_code, response.content)
+        resp_data = json.loads(response.content)
+        self.assertEqual({"status": "active"}, resp_data)
+
 
 notify_req_data = {"vnfinstanceid": "1",
                    "nfvoid": "3",