MCPcopy Create free account
hub / github.com/FDio/vpp / test_echo_source_removed

Method test_echo_source_removed

test/test_bfd.py:1817–1851  ·  view source on GitHub ↗

echo function stops if echo source is removed

(self)

Source from the content-addressed store, hash-verified

1815 self.assert_equal(len(events), 0, "number of bfd events")
1816
1817 def test_echo_source_removed(self):
1818 """echo function stops if echo source is removed"""
1819
1820 if self.multihop:
1821 self.skipTest(
1822 f"Skipping because echo functionality is not supported with multihop"
1823 )
1824
1825 bfd_session_up(self)
1826 self.test_session.update(required_min_echo_rx=150000)
1827 self.test_session.send_packet()
1828 self.vapi.bfd_udp_set_echo_source(sw_if_index=self.loopback0.sw_if_index)
1829 # wait for first echo packet
1830 while True:
1831 p = self.pg0.wait_for_packet(1)
1832 self.logger.debug(ppp("Got packet:", p))
1833 if p[UDP].dport == BFD.udp_dport_echo:
1834 self.logger.debug(ppp("Looping back packet:", p))
1835 p[Ether].dst = self.pg0.local_mac
1836 self.pg0.add_stream(p)
1837 self.pg_start()
1838 break
1839 elif p.haslayer(BFD):
1840 # ignore BFD
1841 pass
1842 else:
1843 raise Exception(ppp("Received unknown packet:", p))
1844 self.vapi.bfd_udp_del_echo_source()
1845 self.test_session.send_packet()
1846 # echo packets shouldn't arrive anymore
1847 for dummy in range(5):
1848 wait_for_bfd_packet(self, pcap_time_min=time.time() - self.vpp_clock_offset)
1849 self.test_session.send_packet()
1850 events = self.vapi.collect_events()
1851 self.assert_equal(len(events), 0, "number of bfd events")
1852
1853 def test_stale_echo(self):
1854 """stale echo packets don't keep a session up"""

Callers

nothing calls this directly

Calls 10

pppFunction · 0.90
bfd_session_upFunction · 0.85
wait_for_bfd_packetFunction · 0.85
pg_startMethod · 0.80
collect_eventsMethod · 0.80
updateMethod · 0.45
send_packetMethod · 0.45
wait_for_packetMethod · 0.45
add_streamMethod · 0.45
assert_equalMethod · 0.45

Tested by

no test coverage detected