aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorfengyuanxing <feng.yuanxing@zte.com.cn>2018-03-06 10:18:08 +0800
committerfengyuanxing <feng.yuanxing@zte.com.cn>2018-03-06 10:18:08 +0800
commit7dfdc86cf8cb6fe9f62a8cbc4866352958772c6c (patch)
tree3fa55cfe5bae8df3bc9b4c75b3ca8151dbb8acf2
parent5ef13de25ac067e81e7dd7e9c6c474c253c33476 (diff)
Add test code for scalingaspect
Change-Id: I8cace12d276e3f0d31438a78ec116db798e39dbf Issue-ID: VFC-784 Signed-off-by: fengyuanxing <feng.yuanxing@zte.com.cn>
-rw-r--r--lcm/pub/tests/__init__.py0
-rw-r--r--lcm/pub/tests/test_scaleaspect.py109
2 files changed, 109 insertions, 0 deletions
diff --git a/lcm/pub/tests/__init__.py b/lcm/pub/tests/__init__.py
new file mode 100644
index 00000000..e69de29b
--- /dev/null
+++ b/lcm/pub/tests/__init__.py
diff --git a/lcm/pub/tests/test_scaleaspect.py b/lcm/pub/tests/test_scaleaspect.py
new file mode 100644
index 00000000..35fda1de
--- /dev/null
+++ b/lcm/pub/tests/test_scaleaspect.py
@@ -0,0 +1,109 @@
+from django.test import TestCase
+from lcm.pub.utils.scaleaspect import get_vnf_scale_info_package
+from lcm.pub.utils.scaleaspect import get_vnf_data_package
+from lcm.pub.utils.scaleaspect import get_json_data
+from lcm.pub.database.models import NfInstModel
+from lcm.pub.database.models import NSInstModel
+from lcm.pub.utils.timeutil import now_time
+import os
+
+
+class TestScaleAspect(TestCase):
+
+ def setUp(self):
+ curdir_path = os.path.dirname(
+ os.path.dirname(
+ os.path.dirname(
+ os.path.abspath(__file__))))
+ filename = curdir_path + "/ns/data/scalemapping.json"
+ self.scaling_map_json = get_json_data(filename)
+
+ self.initInstModel()
+
+ def initInstModel(self):
+ self.nsd_id = "23"
+ self.ns_inst_id = "1"
+ self.ns_name = "ns_1"
+ self.ns_package_id = "ns_zte"
+ self.description = "ns_zte"
+ self.global_customer_id = "global_customer_id"
+ self.service_type = "service_role"
+
+ NSInstModel(id=self.ns_inst_id,
+ name=self.ns_name,
+ nspackage_id=self.ns_package_id,
+ nsd_id=self.nsd_id,
+ description=self.description,
+ status='empty',
+ lastuptime=now_time(),
+ global_customer_id=self.global_customer_id,
+ service_type=self.service_type).save()
+
+ self.nf_inst_id = "231"
+ self.ns_inst_id = "1"
+ self.nf_name = "name_1"
+ self.vnf_id = "1"
+ self.vnfm_inst_id = "1"
+ self.package_id = "nf_zte_cscf"
+ self.nf_uuid = "abc34-345a-de13-ab85-ijs9"
+
+ NfInstModel.objects.create(
+ nfinstid=self.nf_inst_id,
+ nf_name=self.nf_name,
+ vnf_id=self.vnf_id,
+ vnfm_inst_id=self.vnfm_inst_id,
+ ns_inst_id=self.ns_inst_id,
+ max_cpu='14',
+ max_ram='12296',
+ max_hd='101',
+ max_shd="20",
+ max_net=10,
+ status='active',
+ mnfinstid=self.nf_uuid,
+ package_id=self.package_id,
+ vnfd_model='{"metadata": {"vnfdId": "1","vnfdName": "PGW001",'
+ '"vnfProvider": "zte","vnfdVersion": "V00001","vnfVersion": "V5.10.20",'
+ '"productType": "CN","vnfType": "PGW",'
+ '"description": "PGW VNFD description",'
+ '"isShared":true,"vnfExtendType":"driver"}}')
+
+ # Create a second vnf instance
+ self.nf_inst_id = "232"
+ self.package_id = "nf_zte_hss"
+ self.nf_uuid = "abc34-3g5a-de13-ab85-ijs3"
+
+ NfInstModel.objects.create(
+ nfinstid=self.nf_inst_id,
+ nf_name=self.nf_name,
+ vnf_id=self.vnf_id,
+ vnfm_inst_id=self.vnfm_inst_id,
+ ns_inst_id=self.ns_inst_id,
+ max_cpu='14',
+ max_ram='12296',
+ max_hd='101',
+ max_shd="20",
+ max_net=10,
+ status='active',
+ mnfinstid=self.nf_uuid,
+ package_id=self.package_id,
+ vnfd_model='{"metadata": {"vnfdId": "1","vnfdName": "PGW001",'
+ '"vnfProvider": "zte","vnfdVersion": "V00001","vnfVersion": "V5.10.20",'
+ '"productType": "CN","vnfType": "PGW",'
+ '"description": "PGW VNFD description",'
+ '"isShared":true,"vnfExtendType":"driver"}}')
+
+ def tearDown(self):
+ NSInstModel().clean()
+ NfInstModel().clean()
+
+ def test_get_vnf_data_package(self):
+ vnf_data_package = get_vnf_data_package(
+ self.scaling_map_json, "1", "TIC_EDGE_IMS", "1", "IN")
+ self.assertIsNotNone(vnf_data_package)
+ self.assertEqual(2, vnf_data_package.__len__())
+
+ def test_get_vnf_scale_info_package(self):
+ scale_vnf_info_list = get_vnf_scale_info_package(
+ self.scaling_map_json, "23", "TIC_EDGE_IMS", "1")
+ self.assertIsNotNone(scale_vnf_info_list)
+ self.assertEqual(2, scale_vnf_info_list.__len__())