def tearDown(self):
pass
+ # @mock.patch.object(restcall, 'call_req_aai')
@mock.patch.object(restcall, 'call_req')
def test_instantiate_vnf_001(self, mock_call_req):
"""
u'operationalState': u'Disabled',
u'createTime': u'2016-10-31 16:21:11',
u'size': u'12.1 MB'}}
- packageInfo = {u'usageState': u'NotInUse',
- u'onBoardState': u'onBoarded',
- u'name': u'VFW',
- u'format': u'yaml',
- u'provider': u'ZTE',
- u'vnfdProvider': u'zte',
- u'vnfdId': u'vcpe_vfw_zte_1_0',
- u'deletionPending': False,
- u'version': u'v1.0',
- u'vnfVersion': u'1.0',
- u'vnfdVersion': u'1.0.0',
- u'processState': u'normal',
- u'modifyTime': u'2016-10-31 16:21:32',
- u'downloadUri': u'http://192.168.233.226:80/files/catalog-http/NFAR/ZTE/VFW/v1.0/VFW.csar',
- u'operationalState': u'Disabled',
- u'createTime': u'2016-10-31 16:21:11', u'size': u'12.1 MB'}
-
- ret = [0, json.JSONEncoder().encode({"vnfInstanceId":"8",
- "jobid":"NF-CREATE-8-b384535c-9f45-11e6-8749-fa163e91c2f9"}),
- '200']
+ packageInfo = {
+ "size": "12.1 MB",
+ "usageState": "NotInUse",
+ "onBoardState": "onBoarded",
+ "name": "VFW",
+ "format": "yaml",
+ "packageInfo": {
+ "vnfdModel": json.dumps({"metadata": {"name": "ZTE-MME-FIX-VL"}})
+ },
+ "modifyTime": "2016-10-31 16:21:32",
+ "vnfdProvider": "zte",
+ "vnfdId": "vcpe_vfw_zte_1_0",
+ "deletionPending": False,
+ "version": "v1.0",
+ "vnfVersion": "1.0",
+ "vnfdVersion": "1.0.0",
+ "processState": "normal",
+ "provider": "ZTE",
+ "operationalState": "Disabled",
+ "createTime": "2016-10-31 16:21:11",
+ "downloadUri": "http://192.168.233.226:80/files/catalog-http/NFAR/ZTE/VFW/v1.0/VFW.csar"
+ }
+
+ inst_response = {
+ u'vnfInstanceId': u'8',
+ u'jobid': u'NF-CREATE-8-b384535c-9f45-11e6-8749-fa163e91c2f9'
+ }
+ ret = [0, json.JSONEncoder().encode(inst_response), '200']
r1 = [0, json.JSONEncoder().encode(vnfm_info), "200"]
r3 = [0, json.JSONEncoder().encode(packageInfo), "200"]
-
+ # mock_call_req_aai.side_effect =[r1]
mock_call_req.side_effect = [r1, r2, r3, ret]
- req_data = {'vnfInstanceName': 'VFW_f88c0cb7-512a-44c4-bd09-891663f19367',
- 'vnfPackageId': 'd852e1be-0aac-48f1-b1a4-cd825f6cdf9a',
- 'vnfDescriptorId': 'vcpe_vfw_zte_1_0',
- 'additionalParam': {'sdncontroller': 'e4d637f1-a4ec-4c59-8b20-4e8ab34daba9',
- 'NatIpRange': '192.167.0.10-192.168.0.20',
- 'm6000_mng_ip': '192.168.11.11',
- 'externalPluginManageNetworkName': 'plugin_net_2014',
- 'location': '516cee95-e8ca-4d26-9268-38e343c2e31e',
- 'externalManageNetworkName': 'mng_net_2017',
- 'sfc_data_network': 'sfc_data_net_2016',
- 'externalDataNetworkName': 'Flow_out_net',
- 'inputs':{}}}
+ req_data = {
+ 'vnfInstanceName': 'VFW_f88c0cb7-512a-44c4-bd09-891663f19367',
+ 'vnfPackageId': 'd852e1be-0aac-48f1-b1a4-cd825f6cdf9a',
+ 'vnfDescriptorId': 'vcpe_vfw_zte_1_0',
+ 'additionalParam': {
+ 'sdncontroller': 'e4d637f1-a4ec-4c59-8b20-4e8ab34daba9',
+ 'NatIpRange': '192.167.0.10-192.168.0.20',
+ 'm6000_mng_ip': '192.168.11.11',
+ 'externalPluginManageNetworkName': 'plugin_net_2014',
+ 'location': '516cee95-e8ca-4d26-9268-38e343c2e31e',
+ 'externalManageNetworkName': 'mng_net_2017',
+ 'sfc_data_network': 'sfc_data_net_2016',
+ 'externalDataNetworkName': 'Flow_out_net',
+ 'inputs': {}
+ }
+ }
response = self.client.post("/api/ztevmanagerdriver/v1/ztevnfmid/vnfs",
data=json.dumps(req_data), content_type="application/json")
expect_resp_data = {"jobid": "NF-CREATE-8-b384535c-9f45-11e6-8749-fa163e91c2f9", "vnfInstanceId": "8"}
self.assertEqual(expect_resp_data, response.data)
+ # @mock.patch.object(restcall, 'call_req_aai')
@mock.patch.object(restcall, 'call_req')
def test_terminate_vnf__002(self, mock_call_req):
"""
"createTime": "2016-07-06 15:33:18"}), "200"]
r2 = [0, json.JSONEncoder().encode({"vnfInstanceId": "1", "JobId": "1"}), "200"]
+ # mock_call_req_aai.side_effect = [r1]
mock_call_req.side_effect = [r1, r2]
response = self.client.post("/api/ztevmanagerdriver/v1/ztevnfmid/vnfs/vbras_innstance_id/terminate")
expect_resp_data = {"jobid": "1", "vnfInstanceId": "1"}
self.assertEqual(expect_resp_data, response.data)
+ # @mock.patch.object(restcall, 'call_req_aai')
@mock.patch.object(restcall, 'call_req')
def test_query_vnf_003(self, mock_call_req):
"""
"createTime": "2016-07-06 15:33:18"}), "200"]
r2 = [0, json.JSONEncoder().encode({"vnfinstancestatus": "1"}), "200"]
+ # mock_call_req_aai.side_effect = [r1]
mock_call_req.side_effect = [r1, r2]
response = self.client.get("/api/ztevmanagerdriver/v1/ztevnfmid/vnfs/vbras_innstance_id")
expect_resp_data = {"vnfInfo": {"vnfStatus": "1"}}
self.assertEqual(expect_resp_data, response.data)
+ # @mock.patch.object(restcall, 'call_req_aai')
@mock.patch.object(restcall, 'call_req')
def test_operation_status_004(self, mock_call_req):
"""
u'type': u'ztevmanagerdriver',
u'createTime': u'2016-10-31 11:08:39',
u'description': u''}
- resp_body = {"responsedescriptor":
- {"status": "processing", "responsehistorylist": [
- {"status": "error",
- "progress": 255,
- "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"}
+ resp_body = {
+ "responsedescriptor": {
+ "status": "processing",
+ "responsehistorylist": [
+ {
+ "status": "error",
+ "progress": 255,
+ "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"
+ }
r1 = [0, json.JSONEncoder().encode(vnfm_info), '200']
r2 = [0, json.JSONEncoder().encode(resp_body), '200']
+ # mock_call_req_aai.side_effect = [r1]
mock_call_req.side_effect = [r1, r2]
- response = self.client.get("/api/ztevmanagerdriver/v1/{vnfmid}/jobs/{jobid}?responseId={responseId}".
- format(
+ response = self.client.get("/api/ztevmanagerdriver/v1/{vnfmid}/jobs/{jobid}?responseId={responseId}".format(
vnfmid=vnfm_info["vnfmId"],
jobid=resp_body["jobid"],
- responseId=resp_body["responsedescriptor"]["responseid"]))
+ responseId=resp_body["responsedescriptor"]["responseid"])
+ )
self.assertEqual(str(status.HTTP_200_OK), response.status_code)
"vnfmid": "13232222",
"nfvoid": "03212234",
"vimid": "12345678",
- "exvimidlist ":
- ["exvimid"],
+ "exvimidlist ": [
+ "exvimid"
+ ],
"tenant": " tenant1",
"vnfistanceid": "1234",
"operationright": "0",
"vmlist": [
{
"vmflavor": "SMP",
- "vmnumber": "3"},
+ "vmnumber": "3"
+ },
{
"vmflavor": "CMP",
- "vmnumber": "3"}
- ]}
+ "vmnumber": "3"
+ }
+ ]
+ }
mock_call_req.return_value = ret
response = self.client.put("/api/ztevmanagerdriver/v1/resource/grant",
"""
Notification
"""
- r1 = [0, json.JSONEncoder().encode({
- "vnfmId": "19ecbb3a-3242-4fa3-9926-8dfb7ddc29ee",
- "name": "g_vnfm",
- "type": "vnfm",
- "vimId": "",
- "vendor": "ZTE",
- "version": "v1.0",
- "description": "vnfm",
- "certificateUrl": "",
- "url": "http://10.74.44.11",
- "userName": "admin",
- "password": "admin",
- "createTime": "2016-07-06 15:33:18"}), "200"]
-
- r2 = [0, json.JSONEncoder().encode(
+ r1 = [0, json.JSONEncoder().encode(
{"vim":
{
"vimInfoId": "111111",
"vmflavor": "CMP",
"vmnumber": "3",
"vmidlist ": ["vmuuid"]}]}
- mock_call_req.side_effect = [r1, r2]
+ mock_call_req.side_effect = [r1]
response = self.client.post("/api/ztevmanagerdriver/v1/vnfs/lifecyclechangesnotification",
data=json.dumps(req_data), content_type='application/json')
expect_resp_data = None
self.assertEqual(expect_resp_data, response.data)
-
+ # @mock.patch.object(restcall, 'call_req_aai')
@mock.patch.object(restcall, 'call_req')
- def test_scale(self,mock_call_req):
- job_info = {"jobid":"801","nfInstanceId":"101"}
+ def test_scale(self, mock_call_req):
+ job_info = {"jobid": "801", "nfInstanceId": "101"}
vnfm_info = {u'userName': u'admin',
u'vendor': u'ZTE',
u'name': u'ZTE_VNFM_237_62',
u'description': u''}
ret = [0, json.JSONEncoder().encode(job_info), "202"]
- ret_vnfm = [0,json.JSONEncoder().encode(vnfm_info), "200"]
+ ret_vnfm = [0, json.JSONEncoder().encode(vnfm_info), "200"]
+ # mock_call_req_aai.side_effect = [ret_vnfm]
mock_call_req.side_effect = [ret_vnfm, ret]
vnfd_info = {
- "vnf_flavours":[
+ "vnf_flavours": [
{
- "flavour_id":"flavour1",
- "description":"",
- "vdu_profiles":[
+ "flavour_id": "flavour1",
+ "description": "",
+ "vdu_profiles": [
{
- "vdu_id":"vdu1Id",
+ "vdu_id": "vdu1Id",
"instances_minimum_number": 1,
"instances_maximum_number": 4,
- "local_affinity_antiaffinity_rule":[
+ "local_affinity_antiaffinity_rule": [
{
- "affinity_antiaffinity":"affinity",
- "scope":"node",
+ "affinity_antiaffinity": "affinity",
+ "scope": "node",
+
}
]
}
],
- "scaling_aspects":[
+ "scaling_aspects": [
{
"id": "demo_aspect",
"name": "demo_aspect",
}
],
"element_groups": [
- {
- "group_id": "elementGroup1",
- "description": "",
- "properties":{
- "name": "elementGroup1",
- },
- "members": ["gsu_vm","pfu_vm"],
- }
+ {
+ "group_id": "elementGroup1",
+ "description": "",
+ "properties": {
+ "name": "elementGroup1"
+ },
+ "members": [
+ "gsu_vm",
+ "pfu_vm"
+ ]
+ }
]
}
scale_vnf_data = {
- "type":"SCALE_OUT",
- "aspectId":"demo_aspect",
- "numberOfSteps":"3",
- "additionalParam":{
- "vnfdModel":vnfd_info
+ "type": "SCALE_OUT",
+ "aspectId": "demo_aspect",
+ "numberOfSteps": "3",
+ "additionalParam": {
+ "vnfdModel": vnfd_info
}
}
-
response = self.client.post("/api/ztevmanagerdriver/v1/100/vnfs/101/scale",
- data=json.dumps(scale_vnf_data), content_type='application/json')
+ data=json.dumps(scale_vnf_data), content_type='application/json')
self.assertEqual(str(status.HTTP_202_ACCEPTED), response.status_code)
self.assertDictEqual(job_info, response.data)
+ # @mock.patch.object(restcall, 'call_req_aai')
@mock.patch.object(restcall, 'call_req')
- def test_heal(self,mock_call_req):
+ def test_heal(self, mock_call_req):
job_info = {"jobid": "12234455", "nfInstanceId": "10144445666"}
vnfm_info = {u'userName': u'admin',
u'vendor': u'ZTE',
ret = [0, json.JSONEncoder().encode(job_info), "202"]
ret_vnfm = [0, json.JSONEncoder().encode(vnfm_info), "200"]
+ # mock_call_req_aai.side_effect = [ret_vnfm]
mock_call_req.side_effect = [ret_vnfm, ret]
heal_vnf_data = {
data=json.dumps(heal_vnf_data), content_type='application/json')
self.assertEqual(str(status.HTTP_202_ACCEPTED), response.status_code)
- self.assertDictEqual(job_info, response.data)
\ No newline at end of file
+ self.assertDictEqual(job_info, response.data)