def routes_to_route_db( node: str, unicast_routes: Optional[List[network_types.UnicastRoute]] = None, mpls_routes: Optional[List[network_types.MplsRoute]] = None, ) -> fib_types.RouteDatabase: """ :param node: node name :param unicast_routes: list of unicast IP routes :param mpls_routes: list of MPLS routes """ unicast_routes = [] if unicast_routes is None else unicast_routes mpls_routes = [] if mpls_routes is None else mpls_routes return fib_types.RouteDatabase(thisNodeName=node, unicastRoutes=unicast_routes, mplsRoutes=mpls_routes)
# # This source code is licensed under the MIT license found in the # LICENSE file in the root directory of this source tree. # import unittest from builtins import object, range from multiprocessing import Process import bunch import zmq from openr.clients import fib_client from openr.Fib import ttypes as fib_types from openr.utils import zmq_socket route_db_cache = fib_types.RouteDatabase() route_db_cache.thisNodeName = "san jose 1" class Fib(object): def __init__(self, zmq_ctx, url): self._fib_server_socket = zmq_socket.ZmqSocket(zmq_ctx, zmq.REP) self._fib_server_socket.bind(url) self._route_db_cache = route_db_cache def process_request(self): self._fib_server_zmq_socket.recv_thrift_obj(fib_types.FibRequest) self._fib_server_zmq_socket.send_thrift_obj(self._route_db_cache) class TestFibClient(unittest.TestCase):