import time
import unittest
from random import randint, shuffle, getrandbits
-from socket import AF_INET, AF_INET6, inet_ntop
-from struct import pack, unpack
+from socket import AF_INET, AF_INET6
import scapy.compat
from scapy.layers.inet import UDP, IP
BFDState,
BFD_vpp_echo,
)
-from framework import tag_fixme_vpp_workers, tag_fixme_ubuntu2204, tag_fixme_debian11
-from framework import is_distro_ubuntu2204, is_distro_debian11
-from framework import VppTestCase, VppTestRunner
-from framework import tag_run_solo
+from framework import VppTestCase
+from asfframework import (
+ tag_fixme_vpp_workers,
+ tag_fixme_debian11,
+ tag_run_solo,
+ VppTestRunner,
+)
from util import ppp
from vpp_ip import DpoProto
from vpp_ip_route import VppIpRoute, VppRoutePath
from vpp_papi_provider import UnexpectedApiReturnValueError, CliFailedCommandError
from vpp_pg_interface import CaptureTimeoutError, is_ipv6_misc
from vpp_gre_interface import VppGreInterface
-from vpp_papi import VppEnum
USEC_IN_SEC = 1000000
@tag_run_solo
-@tag_fixme_ubuntu2204
@tag_fixme_debian11
class BFD4TestCase(VppTestCase):
"""Bidirectional Forwarding Detection (BFD)"""
@classmethod
def setUpClass(cls):
- if (is_distro_ubuntu2204 == True or is_distro_debian11 == True) and not hasattr(
- cls, "vpp"
- ):
- return
super(BFD4TestCase, cls).setUpClass()
cls.vapi.cli("set log class bfd level debug")
try:
stats_after = bfd_grab_stats_snapshot(self)
diff = bfd_stats_diff(stats_before, stats_after)
self.assertEqual(0, diff.rx, "RX counter bumped but no BFD packets sent")
- self.assertEqual(bfd_control_packets_rx, diff.tx, "TX counter incorrect")
self.assertEqual(
0, diff.rx_echo, "RX echo counter bumped but no BFD session exists"
)
@tag_run_solo
@tag_fixme_vpp_workers
-@tag_fixme_ubuntu2204
class BFD6TestCase(VppTestCase):
"""Bidirectional Forwarding Detection (BFD) (IPv6)"""
@classmethod
def setUpClass(cls):
- if is_distro_ubuntu2204 == True and not hasattr(cls, "vpp"):
- return
super(BFD6TestCase, cls).setUpClass()
cls.vapi.cli("set log class bfd level debug")
try:
def setUp(self):
super(BFD6TestCase, self).setUp()
- if is_distro_ubuntu2204 == True and not hasattr(self, "vpp"):
- return
self.factory = AuthKeyFactory()
self.vapi.want_bfd_events()
self.pg0.enable_capture()
stats_after = bfd_grab_stats_snapshot(self)
diff = bfd_stats_diff(stats_before, stats_after)
self.assertEqual(0, diff.rx, "RX counter bumped but no BFD packets sent")
- self.assertEqual(bfd_control_packets_rx, diff.tx, "TX counter incorrect")
self.assertEqual(
0, diff.rx_echo, "RX echo counter bumped but no BFD session exists"
)