Loading src/kpi_manager/tests/test_kpi_manager.py +49 −53 Original line number Diff line number Diff line Loading @@ -28,10 +28,10 @@ from common.proto.kpi_manager_pb2 import KpiId, KpiDescriptor, KpiDescriptorFilt from common.tools.service.GenericGrpcService import GenericGrpcService from context.client.ContextClient import ContextClient from device.service.driver_api.DriverFactory import DriverFactory from device.service.driver_api.DriverInstanceCache import DriverInstanceCache from device.service.DeviceService import DeviceService from device.client.DeviceClient import DeviceClient # from device.service.driver_api.DriverFactory import DriverFactory # from device.service.driver_api.DriverInstanceCache import DriverInstanceCache # from device.service.DeviceService import DeviceService # from device.client.DeviceClient import DeviceClient from kpi_manager.tests.test_messages import create_kpi_descriptor_request, create_kpi_filter_request, create_kpi_descriptor_request_a from kpi_manager.service.KpiManagerService import KpiManagerService Loading @@ -47,13 +47,12 @@ from device.service.drivers import DRIVERS ########################### LOCAL_HOST = '127.0.0.1' MOCKSERVICE_PORT = 10000 KPIMANAGER_SERVICE_PORT = MOCKSERVICE_PORT + get_service_port_grpc(ServiceNameEnum.KPIMANAGER) # type: ignore KPIMANAGER_SERVICE_PORT = get_service_port_grpc(ServiceNameEnum.KPIMANAGER) # type: ignore os.environ[get_env_var_name(ServiceNameEnum.KPIMANAGER, ENVVAR_SUFIX_SERVICE_HOST )] = str(LOCAL_HOST) os.environ[get_env_var_name(ServiceNameEnum.KPIMANAGER, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(KPIMANAGER_SERVICE_PORT) # METRICSDB_HOSTNAME = os.environ.get('METRICSDB_HOSTNAME') # METRICSDB_HOSTNAME = os.environ.get('METRICSDB_HOSTNAME'){} LOGGER = logging.getLogger(__name__) Loading @@ -68,50 +67,50 @@ class MockContextService(GenericGrpcService): self.context_servicer = MockServicerImpl_Context() add_ContextServiceServicer_to_server(self.context_servicer, self.server) @pytest.fixture(scope='session') def context_service(): LOGGER.info('Initializing MockContextService...') _service = MockContextService(MOCKSERVICE_PORT) _service.start() # @pytest.fixture(scope='session') # def context_service(): # LOGGER.info('Initializing MockContextService...') # _service = MockContextService(MOCKSERVICE_PORT) # _service.start() LOGGER.info('Yielding MockContextService...') yield _service # LOGGER.info('Yielding MockContextService...') # yield _service LOGGER.info('Terminating MockContextService...') _service.context_servicer.msg_broker.terminate() _service.stop() # LOGGER.info('Terminating MockContextService...') # _service.context_servicer.msg_broker.terminate() # _service.stop() LOGGER.info('Terminated MockContextService...') # LOGGER.info('Terminated MockContextService...') @pytest.fixture(scope='session') def context_client(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument LOGGER.info('Initializing ContextClient...') _client = ContextClient() # @pytest.fixture(scope='session') # def context_client(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument # LOGGER.info('Initializing ContextClient...') # _client = ContextClient() LOGGER.info('Yielding ContextClient...') yield _client # LOGGER.info('Yielding ContextClient...') # yield _client LOGGER.info('Closing ContextClient...') _client.close() # LOGGER.info('Closing ContextClient...') # _client.close() LOGGER.info('Closed ContextClient...') # LOGGER.info('Closed ContextClient...') @pytest.fixture(scope='session') def device_service(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument LOGGER.info('Initializing DeviceService...') driver_factory = DriverFactory(DRIVERS) driver_instance_cache = DriverInstanceCache(driver_factory) _service = DeviceService(driver_instance_cache) _service.start() # @pytest.fixture(scope='session') # def device_service(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument # LOGGER.info('Initializing DeviceService...') # driver_factory = DriverFactory(DRIVERS) # driver_instance_cache = DriverInstanceCache(driver_factory) # _service = DeviceService(driver_instance_cache) # _service.start() # yield the server, when test finishes, execution will resume to stop it LOGGER.info('Yielding DeviceService...') yield _service # # yield the server, when test finishes, execution will resume to stop it # LOGGER.info('Yielding DeviceService...') # yield _service LOGGER.info('Terminating DeviceService...') _service.stop() # LOGGER.info('Terminating DeviceService...') # _service.stop() LOGGER.info('Terminated DeviceService...') # LOGGER.info('Terminated DeviceService...') # @pytest.fixture(scope='session') # def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument Loading @@ -126,25 +125,22 @@ def device_service(context_service : MockContextService): # pylint: disable=rede # LOGGER.info('Closed DeviceClient...') @pytest.fixture(scope='session') def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument LOGGER.info('Initializing DeviceClient...') _client = DeviceClient() # @pytest.fixture(scope='session') # def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument # LOGGER.info('Initializing DeviceClient...') # _client = DeviceClient() LOGGER.info('Yielding DeviceClient...') yield _client # LOGGER.info('Yielding DeviceClient...') # yield _client LOGGER.info('Closing DeviceClient...') _client.close() # LOGGER.info('Closing DeviceClient...') # _client.close() LOGGER.info('Closed DeviceClient...') # LOGGER.info('Closed DeviceClient...') # This fixture will be requested by test cases and last during testing session @pytest.fixture(scope='session') def kpi_manager_service( context_service : MockContextService, # pylint: disable=redefined-outer-name,unused-argument device_service : DeviceService # pylint: disable=redefined-outer-name,unused-argument ): def kpi_manager_service(): LOGGER.info('Initializing KpiManagerService...') name_mapping = NameMapping() # _service = MonitoringService(name_mapping) Loading src/kpi_value_writer/service/KpiValueWriter.py +9 −8 Original line number Diff line number Diff line Loading @@ -52,7 +52,10 @@ class KpiValueWriter: 'group.id' : __class__, 'auto.offset.reset' : 'latest'} ) metric_writer_to_prom = MetricWriterToPrometheus() kpi_manager_client = KpiManagerClient() print("Kpi manger client created: {:}".format(kpi_manager_client)) kafka_consumer.subscribe([KafkaTopic.VALUE.value]) LOGGER.debug("Kafka Consumer start listenng on topic: {:}".format(KafkaTopic.VALUE.value)) Loading @@ -70,9 +73,9 @@ class KpiValueWriter: try: kpi_value = KpiValue() kpi_value.ParseFromString(raw_kpi.value()) LOGGER.debug("Received KPI : {:}".format(kpi_value)) LOGGER.info("Received KPI : {:}".format(kpi_value)) print("Received KPI : {:}".format(kpi_value)) KpiValueWriter.get_kpi_descriptor(kpi_value.kpi_id.kpi_id.uuid) KpiValueWriter.get_kpi_descriptor(kpi_value.kpi_id.kpi_id.uuid, kpi_manager_client) # -------- Testing section --------------- # test_kpi_descriptor_obj = create_kpi_descriptor_request() # metric_writer_to_prom.create_and_expose_cooked_kpi( Loading @@ -85,14 +88,12 @@ class KpiValueWriter: continue @staticmethod def get_kpi_descriptor(kpi_value_uuid: str): def get_kpi_descriptor(kpi_value_uuid: str, kpi_manager_client ): print("--- START -----") kpi_id = KpiId() kpi_id.kpi_id.uuid = kpi_value_uuid print("KpiId generated: {:}".format(kpi_id)) kpi_manager_client = KpiManagerClient() print("Kpi manger client created: {:}".format(kpi_manager_client)) try: Loading @@ -101,8 +102,8 @@ class KpiValueWriter: print("kpi descriptor received: {:}".format(kpi_descriptor_object)) if isinstance (kpi_descriptor_object, KpiDescriptor): LOGGER.debug("Extracted row: {:}".format(kpi_descriptor_object)) LOGGER.info("Extracted row: {:}".format(kpi_descriptor_object)) else: LOGGER.debug("Error in extracting row {:}".format(kpi_descriptor_object)) LOGGER.info("Error in extracting row {:}".format(kpi_descriptor_object)) except Exception as e: print ("Unable to get Descriptor. Error: {:}".format(e)) Loading
src/kpi_manager/tests/test_kpi_manager.py +49 −53 Original line number Diff line number Diff line Loading @@ -28,10 +28,10 @@ from common.proto.kpi_manager_pb2 import KpiId, KpiDescriptor, KpiDescriptorFilt from common.tools.service.GenericGrpcService import GenericGrpcService from context.client.ContextClient import ContextClient from device.service.driver_api.DriverFactory import DriverFactory from device.service.driver_api.DriverInstanceCache import DriverInstanceCache from device.service.DeviceService import DeviceService from device.client.DeviceClient import DeviceClient # from device.service.driver_api.DriverFactory import DriverFactory # from device.service.driver_api.DriverInstanceCache import DriverInstanceCache # from device.service.DeviceService import DeviceService # from device.client.DeviceClient import DeviceClient from kpi_manager.tests.test_messages import create_kpi_descriptor_request, create_kpi_filter_request, create_kpi_descriptor_request_a from kpi_manager.service.KpiManagerService import KpiManagerService Loading @@ -47,13 +47,12 @@ from device.service.drivers import DRIVERS ########################### LOCAL_HOST = '127.0.0.1' MOCKSERVICE_PORT = 10000 KPIMANAGER_SERVICE_PORT = MOCKSERVICE_PORT + get_service_port_grpc(ServiceNameEnum.KPIMANAGER) # type: ignore KPIMANAGER_SERVICE_PORT = get_service_port_grpc(ServiceNameEnum.KPIMANAGER) # type: ignore os.environ[get_env_var_name(ServiceNameEnum.KPIMANAGER, ENVVAR_SUFIX_SERVICE_HOST )] = str(LOCAL_HOST) os.environ[get_env_var_name(ServiceNameEnum.KPIMANAGER, ENVVAR_SUFIX_SERVICE_PORT_GRPC)] = str(KPIMANAGER_SERVICE_PORT) # METRICSDB_HOSTNAME = os.environ.get('METRICSDB_HOSTNAME') # METRICSDB_HOSTNAME = os.environ.get('METRICSDB_HOSTNAME'){} LOGGER = logging.getLogger(__name__) Loading @@ -68,50 +67,50 @@ class MockContextService(GenericGrpcService): self.context_servicer = MockServicerImpl_Context() add_ContextServiceServicer_to_server(self.context_servicer, self.server) @pytest.fixture(scope='session') def context_service(): LOGGER.info('Initializing MockContextService...') _service = MockContextService(MOCKSERVICE_PORT) _service.start() # @pytest.fixture(scope='session') # def context_service(): # LOGGER.info('Initializing MockContextService...') # _service = MockContextService(MOCKSERVICE_PORT) # _service.start() LOGGER.info('Yielding MockContextService...') yield _service # LOGGER.info('Yielding MockContextService...') # yield _service LOGGER.info('Terminating MockContextService...') _service.context_servicer.msg_broker.terminate() _service.stop() # LOGGER.info('Terminating MockContextService...') # _service.context_servicer.msg_broker.terminate() # _service.stop() LOGGER.info('Terminated MockContextService...') # LOGGER.info('Terminated MockContextService...') @pytest.fixture(scope='session') def context_client(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument LOGGER.info('Initializing ContextClient...') _client = ContextClient() # @pytest.fixture(scope='session') # def context_client(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument # LOGGER.info('Initializing ContextClient...') # _client = ContextClient() LOGGER.info('Yielding ContextClient...') yield _client # LOGGER.info('Yielding ContextClient...') # yield _client LOGGER.info('Closing ContextClient...') _client.close() # LOGGER.info('Closing ContextClient...') # _client.close() LOGGER.info('Closed ContextClient...') # LOGGER.info('Closed ContextClient...') @pytest.fixture(scope='session') def device_service(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument LOGGER.info('Initializing DeviceService...') driver_factory = DriverFactory(DRIVERS) driver_instance_cache = DriverInstanceCache(driver_factory) _service = DeviceService(driver_instance_cache) _service.start() # @pytest.fixture(scope='session') # def device_service(context_service : MockContextService): # pylint: disable=redefined-outer-name,unused-argument # LOGGER.info('Initializing DeviceService...') # driver_factory = DriverFactory(DRIVERS) # driver_instance_cache = DriverInstanceCache(driver_factory) # _service = DeviceService(driver_instance_cache) # _service.start() # yield the server, when test finishes, execution will resume to stop it LOGGER.info('Yielding DeviceService...') yield _service # # yield the server, when test finishes, execution will resume to stop it # LOGGER.info('Yielding DeviceService...') # yield _service LOGGER.info('Terminating DeviceService...') _service.stop() # LOGGER.info('Terminating DeviceService...') # _service.stop() LOGGER.info('Terminated DeviceService...') # LOGGER.info('Terminated DeviceService...') # @pytest.fixture(scope='session') # def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument Loading @@ -126,25 +125,22 @@ def device_service(context_service : MockContextService): # pylint: disable=rede # LOGGER.info('Closed DeviceClient...') @pytest.fixture(scope='session') def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument LOGGER.info('Initializing DeviceClient...') _client = DeviceClient() # @pytest.fixture(scope='session') # def device_client(device_service : DeviceService): # pylint: disable=redefined-outer-name,unused-argument # LOGGER.info('Initializing DeviceClient...') # _client = DeviceClient() LOGGER.info('Yielding DeviceClient...') yield _client # LOGGER.info('Yielding DeviceClient...') # yield _client LOGGER.info('Closing DeviceClient...') _client.close() # LOGGER.info('Closing DeviceClient...') # _client.close() LOGGER.info('Closed DeviceClient...') # LOGGER.info('Closed DeviceClient...') # This fixture will be requested by test cases and last during testing session @pytest.fixture(scope='session') def kpi_manager_service( context_service : MockContextService, # pylint: disable=redefined-outer-name,unused-argument device_service : DeviceService # pylint: disable=redefined-outer-name,unused-argument ): def kpi_manager_service(): LOGGER.info('Initializing KpiManagerService...') name_mapping = NameMapping() # _service = MonitoringService(name_mapping) Loading
src/kpi_value_writer/service/KpiValueWriter.py +9 −8 Original line number Diff line number Diff line Loading @@ -52,7 +52,10 @@ class KpiValueWriter: 'group.id' : __class__, 'auto.offset.reset' : 'latest'} ) metric_writer_to_prom = MetricWriterToPrometheus() kpi_manager_client = KpiManagerClient() print("Kpi manger client created: {:}".format(kpi_manager_client)) kafka_consumer.subscribe([KafkaTopic.VALUE.value]) LOGGER.debug("Kafka Consumer start listenng on topic: {:}".format(KafkaTopic.VALUE.value)) Loading @@ -70,9 +73,9 @@ class KpiValueWriter: try: kpi_value = KpiValue() kpi_value.ParseFromString(raw_kpi.value()) LOGGER.debug("Received KPI : {:}".format(kpi_value)) LOGGER.info("Received KPI : {:}".format(kpi_value)) print("Received KPI : {:}".format(kpi_value)) KpiValueWriter.get_kpi_descriptor(kpi_value.kpi_id.kpi_id.uuid) KpiValueWriter.get_kpi_descriptor(kpi_value.kpi_id.kpi_id.uuid, kpi_manager_client) # -------- Testing section --------------- # test_kpi_descriptor_obj = create_kpi_descriptor_request() # metric_writer_to_prom.create_and_expose_cooked_kpi( Loading @@ -85,14 +88,12 @@ class KpiValueWriter: continue @staticmethod def get_kpi_descriptor(kpi_value_uuid: str): def get_kpi_descriptor(kpi_value_uuid: str, kpi_manager_client ): print("--- START -----") kpi_id = KpiId() kpi_id.kpi_id.uuid = kpi_value_uuid print("KpiId generated: {:}".format(kpi_id)) kpi_manager_client = KpiManagerClient() print("Kpi manger client created: {:}".format(kpi_manager_client)) try: Loading @@ -101,8 +102,8 @@ class KpiValueWriter: print("kpi descriptor received: {:}".format(kpi_descriptor_object)) if isinstance (kpi_descriptor_object, KpiDescriptor): LOGGER.debug("Extracted row: {:}".format(kpi_descriptor_object)) LOGGER.info("Extracted row: {:}".format(kpi_descriptor_object)) else: LOGGER.debug("Error in extracting row {:}".format(kpi_descriptor_object)) LOGGER.info("Error in extracting row {:}".format(kpi_descriptor_object)) except Exception as e: print ("Unable to get Descriptor. Error: {:}".format(e))