blob: 0e5b315963e2695fe4b8fd79565e9fe6af92ab84 [file] [log] [blame]
import unittest
import os
from framework import VppTestCase, VppTestRunner
from vpp_devices import VppTAPInterface
def check_tuntap_driver_access():
return os.access("/dev/net/tun", os.R_OK and os.W_OK)
@unittest.skip("Requires root")
class TestTAP(VppTestCase):
""" TAP Test Case """
def test_tap_add_del(self):
"""Create TAP interface"""
tap0 = VppTAPInterface(self, tap_id=0)
tap0.add_vpp_config()
self.assertTrue(tap0.query_vpp_config())
def test_tap_dump(self):
""" Test api dump w/ and w/o sw_if_index filtering"""
MAX_INSTANCES = 10
tap_instances = []
for instance in range(MAX_INSTANCES):
i = VppTAPInterface(self, tap_id=instance)
i.add_vpp_config()
tap_instances.append(i)
details = self.vapi.sw_interface_tap_v2_dump()
self.assertEqual(MAX_INSTANCES, len(details))
details = self.vapi.sw_interface_tap_v2_dump(
tap_instances[5].sw_if_index)
self.assertEqual(1, len(details))
if __name__ == '__main__':
unittest.main(testRunner=VppTestRunner)