Loading src/tests/ryu-openflow/tests/test_cleanup.py +28 −6 Original line number Diff line number Diff line Loading @@ -12,10 +12,11 @@ # See the License for the specific language governing permissions and # limitations under the License. import logging, os import graphlib, logging, os from typing import Dict, List, Tuple from common.Constants import DEFAULT_CONTEXT_NAME from common.proto.context_pb2 import ContextId, DeviceFilter, Empty from common.tools.descriptor.Loader import DescriptorLoader, validate_empty_scenario from common.proto.context_pb2 import ContextId, DeviceId, Empty from common.tools.descriptor.Loader import validate_empty_scenario from common.tools.grpc.Tools import grpc_message_to_json_string from common.tools.object_factory.Context import json_context_id from context.client.ContextClient import ContextClient Loading Loading @@ -45,9 +46,30 @@ def test_scenario_cleanup( for link_id in link_ids.link_ids: context_client.RemoveLink(link_id) device_ids = context_client.ListDeviceIds(Empty()) LOGGER.debug('Device Ids: {:s}'.format(grpc_message_to_json_string(device_ids))) for device_id in device_ids.device_ids: devices = context_client.ListDevices(Empty()) LOGGER.debug('Devices: {:s}'.format(grpc_message_to_json_string(devices))) dag_device_uuids = graphlib.TopologicalSorter() device_uuid_to_data : Dict[str, Tuple[DeviceId, str]] = dict() for device in devices.devices: device_id = device.device_id device_uuid = device_id.device_uuid.uuid dag_device_uuids.add(device_uuid) device_uuid_to_data[device_uuid] = (device_id, device.name) controller_uuid = device.controller_id.device_uuid.uuid if len(controller_uuid) == 0: continue dag_device_uuids.add(controller_uuid, device_uuid) sorted_device_uuids = list(dag_device_uuids.static_order()) LOGGER.debug('device_uuid_to_data: {:s}'.format(str(device_uuid_to_data))) LOGGER.debug('sorted_device_uuids: {:s}'.format(str(sorted_device_uuids))) for device_uuid in sorted_device_uuids: device_id = device_uuid_to_data[device_uuid] context_client.RemoveDevice(device_id) context_ids = context_client.ListContextIds(Empty()) Loading Loading
src/tests/ryu-openflow/tests/test_cleanup.py +28 −6 Original line number Diff line number Diff line Loading @@ -12,10 +12,11 @@ # See the License for the specific language governing permissions and # limitations under the License. import logging, os import graphlib, logging, os from typing import Dict, List, Tuple from common.Constants import DEFAULT_CONTEXT_NAME from common.proto.context_pb2 import ContextId, DeviceFilter, Empty from common.tools.descriptor.Loader import DescriptorLoader, validate_empty_scenario from common.proto.context_pb2 import ContextId, DeviceId, Empty from common.tools.descriptor.Loader import validate_empty_scenario from common.tools.grpc.Tools import grpc_message_to_json_string from common.tools.object_factory.Context import json_context_id from context.client.ContextClient import ContextClient Loading Loading @@ -45,9 +46,30 @@ def test_scenario_cleanup( for link_id in link_ids.link_ids: context_client.RemoveLink(link_id) device_ids = context_client.ListDeviceIds(Empty()) LOGGER.debug('Device Ids: {:s}'.format(grpc_message_to_json_string(device_ids))) for device_id in device_ids.device_ids: devices = context_client.ListDevices(Empty()) LOGGER.debug('Devices: {:s}'.format(grpc_message_to_json_string(devices))) dag_device_uuids = graphlib.TopologicalSorter() device_uuid_to_data : Dict[str, Tuple[DeviceId, str]] = dict() for device in devices.devices: device_id = device.device_id device_uuid = device_id.device_uuid.uuid dag_device_uuids.add(device_uuid) device_uuid_to_data[device_uuid] = (device_id, device.name) controller_uuid = device.controller_id.device_uuid.uuid if len(controller_uuid) == 0: continue dag_device_uuids.add(controller_uuid, device_uuid) sorted_device_uuids = list(dag_device_uuids.static_order()) LOGGER.debug('device_uuid_to_data: {:s}'.format(str(device_uuid_to_data))) LOGGER.debug('sorted_device_uuids: {:s}'.format(str(sorted_device_uuids))) for device_uuid in sorted_device_uuids: device_id = device_uuid_to_data[device_uuid] context_client.RemoveDevice(device_id) context_ids = context_client.ListContextIds(Empty()) Loading