X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=test%2Ftest_ipip.py;h=350eae0fded05faddb17e9fe233a3bad64322c5e;hb=c0a93143412b4be7bba087bf633855aeeaee7c56;hp=8d99f83e6c21f3047514dd5044c2dd493d7b41f0;hpb=7eb9d9608b5b47b95f4860b2c470411658f7cdac;p=vpp.git diff --git a/test/test_ipip.py b/test/test_ipip.py index 8d99f83e6c2..350eae0fded 100644 --- a/test/test_ipip.py +++ b/test/test_ipip.py @@ -5,7 +5,8 @@ import unittest from scapy.layers.inet6 import IPv6, Ether, IP, UDP from scapy.all import fragment, RandShort from framework import VppTestCase, VppTestRunner -from vpp_ip_route import VppIpRoute, VppRoutePath, DpoProto +from vpp_ip import DpoProto +from vpp_ip_route import VppIpRoute, VppRoutePath, VppIpTable from socket import AF_INET, AF_INET6, inet_pton import StringIO @@ -144,6 +145,10 @@ class TestIPIP(VppTestCase): for p in rx: self.validate(p[1], p4_reply) + err = '/err/ipip4-input/packets decapsulated' + cnt = self.statistics.dump_str(err) + self.assertEqual(cnt[err], 10) + # IPv4 tunnel to IPv6 p_ip6 = IPv6(src="1:2:3::4", dst=self.pg0.remote_ip6) p6 = (p_ether / IP(src=self.pg1.remote_ip4, @@ -154,6 +159,9 @@ class TestIPIP(VppTestCase): for p in rx: self.validate(p[1], p6_reply) + cnt = self.statistics.dump_str(err) + self.assertEqual(cnt[err], 20) + # # Fragmentation / Reassembly and Re-fragmentation # @@ -174,6 +182,9 @@ class TestIPIP(VppTestCase): for p in rx: self.validate(p[1], p4_reply) + cnt = self.statistics.dump_str(err) + self.assertEqual(cnt[err], 1020) + f = [] r = [] for i in range(1, 90): @@ -303,6 +314,18 @@ class TestIPIP(VppTestCase): sw_if_index = rv.sw_if_index self.vapi.ipip_del_tunnel(sw_if_index) + def test_ipip_vrf_create(self): + """ ipip create / delete interface VRF test """ + + t = VppIpTable(self, 20) + t.add_vpp_config() + rv = self.vapi.ipip_add_tunnel( + src_address=inet_pton(AF_INET, '1.2.3.4'), + dst_address=inet_pton(AF_INET, '2.3.4.5'), is_ipv6=0, + table_id=20) + sw_if_index = rv.sw_if_index + self.vapi.ipip_del_tunnel(sw_if_index) + def payload(self, len): return 'x' * len