| import abc |
| import six |
| from vpp_pg_interface import is_ipv6_misc |
| from vpp_interface import VppInterface |
| |
| |
| @six.add_metaclass(abc.ABCMeta) |
| class VppTunnelInterface(VppInterface): |
| """ VPP tunnel interface abstraction """ |
| |
| def __init__(self, test, parent_if): |
| super(VppTunnelInterface, self).__init__(test) |
| self.parent_if = parent_if |
| |
| @property |
| def local_mac(self): |
| return self.parent_if.local_mac |
| |
| @property |
| def remote_mac(self): |
| return self.parent_if.remote_mac |
| |
| def enable_capture(self): |
| return self.parent_if.enable_capture() |
| |
| def add_stream(self, pkts): |
| return self.parent_if.add_stream(pkts) |
| |
| def get_capture(self, expected_count=None, remark=None, timeout=1, |
| filter_out_fn=is_ipv6_misc): |
| return self.parent_if.get_capture(expected_count, remark, timeout, |
| filter_out_fn) |