This prevents failure of test scenarios 'make check-kernel'
and 'make check-system-userspace' if creation of veth pairs is not
supported by kernel (or module isn't loaded).

Signed-off-by: Ilya Maximets <i.maxim...@samsung.com>
---
 tests/system-common-macros.at |  9 +++++++++
 tests/system-traffic.at       | 45 +++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 54 insertions(+)

diff --git a/tests/system-common-macros.at b/tests/system-common-macros.at
index fcd7792..107900a 100644
--- a/tests/system-common-macros.at
+++ b/tests/system-common-macros.at
@@ -155,3 +155,12 @@ m4_define([NETNS_DAEMONIZE],
 # Do basic check for vxlan functionality, skip the test if it's not there.
 m4_define([OVS_CHECK_VXLAN],
     [AT_SKIP_IF([! ip link add foo type vxlan help 2>&1 | grep dstport 
>/dev/null])])
+
+# OVS_CHECK_VETH()
+#
+# Do basic check for veth functionality, skip the test if it's not there.
+m4_define([OVS_CHECK_VETH],
+    [ADD_NAMESPACES(at_vethtest)
+     AT_SKIP_IF([! ip netns exec at_vethtest ip link add type veth peer])
+    ]
+)
diff --git a/tests/system-traffic.at b/tests/system-traffic.at
index 28adbdc..73ae991 100644
--- a/tests/system-traffic.at
+++ b/tests/system-traffic.at
@@ -1,6 +1,7 @@
 AT_BANNER([datapath-sanity])
 
 AT_SETUP([datapath - ping between two ports])
+OVS_CHECK_VETH()
 OVS_TRAFFIC_VSWITCHD_START()
 
 AT_CHECK([ovs-ofctl add-flow br0 "actions=normal"])
@@ -24,6 +25,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([datapath - ping between two ports on vlan])
+OVS_CHECK_VETH()
 OVS_TRAFFIC_VSWITCHD_START()
 
 AT_CHECK([ovs-ofctl add-flow br0 "actions=normal"])
@@ -50,6 +52,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([datapath - ping6 between two ports])
+OVS_CHECK_VETH()
 OVS_TRAFFIC_VSWITCHD_START()
 
 AT_CHECK([ovs-ofctl add-flow br0 "actions=normal"])
@@ -77,6 +80,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([datapath - ping6 between two ports on vlan])
+OVS_CHECK_VETH()
 OVS_TRAFFIC_VSWITCHD_START()
 
 AT_CHECK([ovs-ofctl add-flow br0 "actions=normal"])
@@ -107,6 +111,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([datapath - ping over vxlan tunnel])
+OVS_CHECK_VETH()
 OVS_CHECK_VXLAN()
 
 OVS_TRAFFIC_VSWITCHD_START()
@@ -148,6 +153,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - controller])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -191,6 +197,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv4 HTTP])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -231,6 +238,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 HTTP])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -272,6 +280,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - commit, recirc])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -312,6 +321,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - preserve registers])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -352,6 +362,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - invalid])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -395,6 +406,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - zones])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -442,6 +454,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - zones from field])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -488,6 +501,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - multiple bridges])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START(
    [_ADD_BR([br1]) --\
@@ -532,6 +546,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - multiple zones])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -568,6 +583,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - multiple zones, local])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -615,6 +631,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - multiple namespaces, internal ports])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START(
    [set-fail-mode br0 secure -- ])
@@ -655,6 +672,7 @@ OVS_TRAFFIC_VSWITCHD_STOP(["dnl
 AT_CLEANUP
 
 AT_SETUP([conntrack - multi-stage pipeline, local])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -724,6 +742,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - ct_mark])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -771,6 +790,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - ct_mark from register])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -817,6 +837,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - ct_label])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -856,6 +877,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - ICMP related])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -891,6 +913,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - ICMP related 2])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -936,6 +959,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - FTP])
 AT_SKIP_IF([test $HAVE_PYFTPDLIB = no])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1018,6 +1042,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 FTP])
 AT_SKIP_IF([test $HAVE_PYFTPDLIB = no])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1068,6 +1093,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - FTP with multiple expectations])
 AT_SKIP_IF([test $HAVE_PYFTPDLIB = no])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1129,6 +1155,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - IPv4 fragmentation ])
 CHECK_CONNTRACK()
+OVS_CHECK_VETH()
 OVS_TRAFFIC_VSWITCHD_START()
 
 ADD_NAMESPACES(at_ns0, at_ns1)
@@ -1166,6 +1193,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv4 fragmentation expiry])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1201,6 +1229,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv4 fragmentation + vlan])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1241,6 +1270,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 fragmentation])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1284,6 +1314,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 fragmentation expiry])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1328,6 +1359,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 fragmentation + vlan])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1374,6 +1406,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - Fragmentation over vxlan])
+OVS_CHECK_VETH()
 OVS_CHECK_VXLAN()
 CHECK_CONNTRACK()
 
@@ -1426,6 +1459,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 Fragmentation over vxlan])
 AT_SKIP_IF([! ip link help 2>&1 | grep vxlan >/dev/null])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 
 OVS_TRAFFIC_VSWITCHD_START()
@@ -1483,6 +1517,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - resubmit to ct multiple times])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 
 OVS_TRAFFIC_VSWITCHD_START(
@@ -1523,6 +1558,7 @@ AT_CLEANUP
 
 
 AT_SETUP([conntrack - simple SNAT])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1569,6 +1605,7 @@ AT_CLEANUP
 
 
 AT_SETUP([conntrack - SNAT with port range])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1616,6 +1653,7 @@ AT_CLEANUP
 
 
 AT_SETUP([conntrack - more complex SNAT])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1667,6 +1705,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - simple DNAT])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1721,6 +1760,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - more complex DNAT])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1781,6 +1821,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - ICMP related with NAT])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1842,6 +1883,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - FTP with NAT])
 AT_SKIP_IF([test $HAVE_PYFTPDLIB = no])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 
 OVS_TRAFFIC_VSWITCHD_START()
@@ -1922,6 +1964,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - FTP with NAT 2])
 AT_SKIP_IF([test $HAVE_PYFTPDLIB = no])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -1988,6 +2031,7 @@ OVS_TRAFFIC_VSWITCHD_STOP
 AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 HTTP with NAT])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
@@ -2030,6 +2074,7 @@ AT_CLEANUP
 
 AT_SETUP([conntrack - IPv6 FTP with NAT])
 AT_SKIP_IF([test $HAVE_PYFTPDLIB = no])
+OVS_CHECK_VETH()
 CHECK_CONNTRACK()
 OVS_TRAFFIC_VSWITCHD_START()
 
-- 
2.5.0

_______________________________________________
dev mailing list
dev@openvswitch.org
http://openvswitch.org/mailman/listinfo/dev

Reply via email to