From b8db5bdff48eea373216d8fd9badaf1c2009be55 Mon Sep 17 00:00:00 2001 From: gifrerenom <lluis.gifre@cttc.es> Date: Thu, 13 Jul 2023 12:03:29 +0000 Subject: [PATCH] Fix OFC'22 test to wait for device activation --- .../ofc22/tests/test_functional_bootstrap.py | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/tests/ofc22/tests/test_functional_bootstrap.py b/src/tests/ofc22/tests/test_functional_bootstrap.py index ca1882aaa..f14960492 100644 --- a/src/tests/ofc22/tests/test_functional_bootstrap.py +++ b/src/tests/ofc22/tests/test_functional_bootstrap.py @@ -14,7 +14,7 @@ import logging, time from common.Constants import DEFAULT_CONTEXT_NAME -from common.proto.context_pb2 import ContextId, Empty +from common.proto.context_pb2 import ContextId, DeviceOperationalStatusEnum, Empty from common.proto.monitoring_pb2 import KpiDescriptorList from common.tools.descriptor.Loader import DescriptorLoader, check_descriptor_load_results, validate_empty_scenario from common.tools.object_factory.Context import json_context_id @@ -46,6 +46,27 @@ def test_scenario_bootstrap( assert len(response.service_ids) == 0 assert len(response.slice_ids) == 0 +def test_scenario_devices_enabled( + context_client : ContextClient, # pylint: disable=redefined-outer-name +) -> None: + """ + This test validates that the devices are enabled. + """ + DEVICE_OP_STATUS_ENABLED = DeviceOperationalStatusEnum.DEVICEOPERATIONALSTATUS_ENABLED + + num_devices = -1 + num_devices_enabled, num_retry = 0, 0 + while (num_devices != num_devices_enabled) and (num_retry < 10): + time.sleep(1.0) + response = context_client.ListDevices(Empty()) + num_devices = len(response.devices) + num_devices_enabled = 0 + for device in response.devices: + if device.device_operational_status != DEVICE_OP_STATUS_ENABLED: continue + num_devices_enabled += 1 + LOGGER.info('Num Devices enabled: {:d}/{:d}'.format(num_devices_enabled, num_devices)) + num_retry += 1 + assert num_devices_enabled == num_devices def test_scenario_kpis_created( context_client : ContextClient, # pylint: disable=redefined-outer-name @@ -67,7 +88,7 @@ def test_scenario_kpis_created( LOGGER.info('Num KPIs expected: {:d}'.format(num_kpis_expected)) num_kpis_created, num_retry = 0, 0 - while (num_kpis_created != num_kpis_expected) and (num_retry < 5): + while (num_kpis_created != num_kpis_expected) and (num_retry < 10): response: KpiDescriptorList = monitoring_client.GetKpiDescriptorList(Empty()) num_kpis_created = len(response.kpi_descriptor_list) LOGGER.info('Num KPIs created: {:d}'.format(num_kpis_created)) -- GitLab