X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_policy_module%2Ftests%2Fintegration%2Ftest_policy_agent.py;h=7ad9944ca5e020dd5358c12f93ded1d09daa64f4;hb=10be7c984475707be716708dfdd2d91a655158dc;hp=11bc9695689e8a2a70abff91e44119bc317efcf0;hpb=8d2d6a02f2282c50a934ccab25fc909e3bbc27c6;p=osm%2FPOL.git diff --git a/osm_policy_module/tests/integration/test_policy_agent.py b/osm_policy_module/tests/integration/test_policy_agent.py index 11bc969..7ad9944 100644 --- a/osm_policy_module/tests/integration/test_policy_agent.py +++ b/osm_policy_module/tests/integration/test_policy_agent.py @@ -30,12 +30,13 @@ from unittest.mock import patch, Mock from kafka import KafkaProducer from osm_common.dbmongo import DbMongo -from peewee import SqliteDatabase +from playhouse.db_url import connect from osm_policy_module.common.common_db_client import CommonDbClient from osm_policy_module.common.mon_client import MonClient from osm_policy_module.core import database from osm_policy_module.core.agent import PolicyModuleAgent +from osm_policy_module.core.config import Config from osm_policy_module.core.database import ScalingGroup, ScalingAlarm, ScalingPolicy, ScalingCriteria log = logging.getLogger() @@ -326,10 +327,28 @@ vnfd_record_mock = { "id": "cirros_vnf_memory_util", "name": "cirros_vnf_memory_util", "aggregation-type": "AVERAGE", - "vdu-monitoring-param-ref": "cirros_vnfd-VM_memory_util", - "vdu-ref": "cirros_vnfd-VM" + "vdu-monitoring-param": { + "vdu-monitoring-param-ref": "cirros_vnfd-VM_memory_util", + "vdu-ref": "cirros_vnfd-VM" + } + }, + { + "id": "haproxy_users", + "name": "haproxy_users", + "aggregation-type": "AVERAGE", + "vnf-metric": + {"vnf-metric-name-ref": "users"} } ], + "vdu-configuration": { + "juju": { + "charm": "testmetrics", + "proxy": True + }, + "metrics": { + "name": "users" + } + }, "description": "Simple VNF example with a cirros and a scaling group descriptor", "id": "cirros_vdu_scaling_vnf", "logo": "cirros-64.png", @@ -401,21 +420,18 @@ vnfd_record_mock = { } } -test_db = SqliteDatabase(':memory:') - MODELS = [ScalingGroup, ScalingPolicy, ScalingCriteria, ScalingAlarm] class PolicyModuleAgentTest(unittest.TestCase): def setUp(self): super() - database.db = test_db - test_db.bind(MODELS) - test_db.connect() - test_db.drop_tables(MODELS) - test_db.create_tables(MODELS) + database.db.initialize(connect('sqlite://')) + database.db.bind(MODELS) + database.db.connect() + database.db.drop_tables(MODELS) + database.db.create_tables(MODELS) self.loop = asyncio.new_event_loop() - asyncio.set_event_loop(None) def tearDown(self): super() @@ -441,30 +457,31 @@ class PolicyModuleAgentTest(unittest.TestCase): get_nsr.return_value = nsr_record_mock get_vnfd.return_value = vnfd_record_mock create_alarm.side_effect = _test_configure_scaling_groups_create_alarm - agent = PolicyModuleAgent(self.loop) + config = Config() + agent = PolicyModuleAgent(config, self.loop) self.loop.run_until_complete(agent._configure_scaling_groups("test_nsr_id")) - create_alarm.assert_any_call(metric_name='average_memory_utilization', + create_alarm.assert_any_call(metric_name='cirros_vnf_memory_util', ns_id='test_nsr_id', operation='GT', statistic='AVERAGE', threshold=80, vdu_name='cirros_ns-1-cirros_vnfd-VM-1', vnf_member_index='1') - create_alarm.assert_any_call(metric_name='average_memory_utilization', + create_alarm.assert_any_call(metric_name='cirros_vnf_memory_util', ns_id='test_nsr_id', operation='LT', statistic='AVERAGE', threshold=20, vdu_name='cirros_ns-1-cirros_vnfd-VM-1', vnf_member_index='1') - create_alarm.assert_any_call(metric_name='average_memory_utilization', + create_alarm.assert_any_call(metric_name='cirros_vnf_memory_util', ns_id='test_nsr_id', operation='GT', statistic='AVERAGE', threshold=80, vdu_name='cirros_ns-2-cirros_vnfd-VM-1', vnf_member_index='2') - create_alarm.assert_any_call(metric_name='average_memory_utilization', + create_alarm.assert_any_call(metric_name='cirros_vnf_memory_util', ns_id='test_nsr_id', operation='LT', statistic='AVERAGE',