X-Git-Url: https://osm.etsi.org/gitweb/?a=blobdiff_plain;f=osm_policy_module%2Ftests%2Fintegration%2Ftest_policy_agent.py;h=3126c0fd69f1c7d52f242d9c3aa412183420e24f;hb=refs%2Fchanges%2F03%2F6803%2F3;hp=bed6eb53be77d7e7873669ccaa922341a461d260;hpb=d8e91c539f8a1657a93c6ed59dd5f9ad489684ef;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 bed6eb5..3126c0f 100644 --- a/osm_policy_module/tests/integration/test_policy_agent.py +++ b/osm_policy_module/tests/integration/test_policy_agent.py @@ -21,6 +21,7 @@ # For those usages not covered by the Apache License, Version 2.0 please # contact: bdiaz@whitestack.com or glavado@whitestack.com ## +import asyncio import logging import sys import unittest @@ -31,7 +32,7 @@ from kafka import KafkaProducer from osm_common.dbmongo import DbMongo from peewee import SqliteDatabase -from osm_policy_module.common.db_client import DbClient +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 @@ -325,10 +326,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", @@ -413,6 +432,8 @@ class PolicyModuleAgentTest(unittest.TestCase): test_db.connect() test_db.drop_tables(MODELS) test_db.create_tables(MODELS) + self.loop = asyncio.new_event_loop() + asyncio.set_event_loop(None) def tearDown(self): super() @@ -420,9 +441,9 @@ class PolicyModuleAgentTest(unittest.TestCase): @patch.object(DbMongo, 'db_connect', Mock()) @patch.object(KafkaProducer, '__init__') @patch.object(MonClient, 'create_alarm') - @patch.object(DbClient, 'get_vnfd') - @patch.object(DbClient, 'get_nsr') - @patch.object(DbClient, 'get_vnfr') + @patch.object(CommonDbClient, 'get_vnfd') + @patch.object(CommonDbClient, 'get_nsr') + @patch.object(CommonDbClient, 'get_vnfr') def test_configure_scaling_groups(self, get_vnfr, get_nsr, get_vnfd, create_alarm, kafka_producer_init): def _test_configure_scaling_groups_get_vnfr(*args, **kwargs): if '1' in args[1]: @@ -430,7 +451,7 @@ class PolicyModuleAgentTest(unittest.TestCase): if '2' in args[1]: return vnfr_record_mocks[1] - def _test_configure_scaling_groups_create_alarm(*args, **kwargs): + async def _test_configure_scaling_groups_create_alarm(*args, **kwargs): return uuid.uuid4() kafka_producer_init.return_value = None @@ -438,8 +459,8 @@ 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() - agent._configure_scaling_groups("test_nsr_id") + agent = PolicyModuleAgent(self.loop) + self.loop.run_until_complete(agent._configure_scaling_groups("test_nsr_id")) create_alarm.assert_any_call(metric_name='average_memory_utilization', ns_id='test_nsr_id', operation='GT',