summaryrefslogtreecommitdiffstats
path: root/test/vpp_lo_interface.py
blob: 36f56bed8d7337d77baf0fad0ee767ed427a4fa4 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
from vpp_object import VppObject
from vpp_interface import VppInterface


class VppLoInterface(VppInterface, VppObject):
    """VPP loopback interface."""

    def __init__(self, test):
        """ Create VPP loopback interface """
        super(VppLoInterface, self).__init__(test)
        self.add_vpp_config()

    def add_vpp_config(self):
        r = self.test.vapi.create_loopback()
        self.set_sw_if_index(r.sw_if_index)

    def remove_vpp_config(self):
        self.test.vapi.delete_loopback(self.sw_if_index)

    def object_id(self):
        return "loopback-%d" % self._sw_if_index
nh = nh def add_vpp_config(self): r = self._test.vapi.teib_entry_add_del( is_add=1, entry={ 'nh_table_id': self.table_id, 'sw_if_index': self.itf.sw_if_index, 'peer': self.peer, 'nh': self.nh, }) self._test.registry.register(self, self._test.logger) return self def remove_vpp_config(self): r = self._test.vapi.teib_entry_add_del( is_add=0, entry={ 'nh_table_id': self.table_id, 'sw_if_index': self.itf.sw_if_index, 'peer': self.peer, }) def query_vpp_config(self): return find_teib(self._test, self) def object_id(self): return ("teib-%s-%s" % (self.itf, self.peer))