diff options
-rw-r--r-- | lcm/ns/tests/vnfs/tests.py | 81 |
1 files changed, 64 insertions, 17 deletions
diff --git a/lcm/ns/tests/vnfs/tests.py b/lcm/ns/tests/vnfs/tests.py index 9650ed45..1406fae2 100644 --- a/lcm/ns/tests/vnfs/tests.py +++ b/lcm/ns/tests/vnfs/tests.py @@ -303,10 +303,7 @@ class TestScaleVnfViews(TestCase): NSInstModel.objects.all().delete() NfInstModel.objects.all().delete() - @mock.patch.object(restcall, "call_req") - def test_scale_vnf(self, mock_call_req): - job_id = JobUtil.create_job("VNF", JOB_TYPE.TERMINATE_VNF, self.nf_inst_id) - + def test_scale_vnf(self): vnfd_info = { "vnf_flavours": [{ "flavour_id": "flavour1", @@ -361,22 +358,72 @@ class TestScaleVnfViews(TestCase): ] } - mock_vals = { - "/api/ztevnfmdriver/v1/1/vnfs/111/terminate": - [0, json.JSONEncoder().encode({"jobId": job_id}), '200'] - } - - def side_effect(*args): - return mock_vals[args[4]] + NFManualScaleService(self.nf_inst_id, req_data).run() + nsIns = NfInstModel.objects.filter(nfinstid=self.nf_inst_id) + self.assertIsNotNone(nsIns) - mock_call_req.side_effect = side_effect + @mock.patch.object(NFManualScaleService, "send_nf_scaling_request") + def test_scale_vnf_success(self, mock_send_nf_scaling_request): + vnfd_info = { + "vnf_flavours": [{ + "flavour_id": "flavour1", + "description": "", + "vdu_profiles": [ + { + "vdu_id": "vdu1Id", + "instances_minimum_number": 1, + "instances_maximum_number": 4, + "local_affinity_antiaffinity_rule": [ + { + "affinity_antiaffinity": "affinity", + "scope": "node", + } + ] + } + ], + "scaling_aspects": [ + { + "id": "demo_aspect", + "name": "demo_aspect", + "description": "demo_aspect", + "associated_group": "elementGroup1", + "max_scale_level": 5 + } + ] + }], + "element_groups": [{ + "group_id": "elementGroup1", + "description": "", + "properties": { + "name": "elementGroup1", + }, + "members": ["gsu_vm", "pfu_vm"] + }] + } - NFManualScaleService(self.nf_inst_id, req_data).run() + req_data = { + "scaleVnfData": [ + { + "type": "SCALE_OUT", + "aspectId": "demo_aspect1", + "numberOfSteps": 1, + "additionalParam": vnfd_info + }, + { + "type": "SCALE_OUT", + "aspectId": "demo_aspect2", + "numberOfSteps": 1, + "additionalParam": vnfd_info + } + ] + } + scale_service = NFManualScaleService(self.nf_inst_id, req_data) + scale_service.run() nsIns = NfInstModel.objects.filter(nfinstid=self.nf_inst_id) - if nsIns: - self.failUnlessEqual(1, 1) - else: - self.failUnlessEqual(1, 0) + self.assertIsNotNone(nsIns) + + jobs = JobModel.objects.filter(jobid=scale_service.job_id) + self.assertIsNotNone(100, jobs[0].progress) class TestHealVnfViews(TestCase): |