aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--lcm/ns/tests/vnfs/tests.py81
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):