Starting a scapy server might take time on slow/busy systems, and cause
some tests to fail in a flaky way when started in the middle of the test.

This caused some tests to be flaky such as:
- "IP packet buffering"
- "virtual port claim race condition"

Note that macros such as send_garp do not check anymore to skip the
test if HAVE_SCAPY is not set as it is done through OVN_SCAPY_REQUIRED.
OVN_SCAPY_REQUIRED is now enforced: a test calling send_garp, send_na or
fmt_pkt will always fail if OVN_SCAPY_REQUIRED is not set.

Signed-off-by: Xavier Simonart <[email protected]>
---
 tests/ovn-ic.at     |   2 +-
 tests/ovn-macros.at |  12 ++---
 tests/ovn-util.at   |   1 -
 tests/ovn.at        | 128 +++++++++++++++++++++++---------------------
 tests/system-ovn.at |   6 +--
 5 files changed, 76 insertions(+), 73 deletions(-)

diff --git a/tests/ovn-ic.at b/tests/ovn-ic.at
index 68d78d9e4..35a531d89 100644
--- a/tests/ovn-ic.at
+++ b/tests/ovn-ic.at
@@ -2872,7 +2872,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([spine-leaf: 3 AZs, 3 HVs, 3 LSs, connected via transit spine switch])
 AT_KEYWORDS([spine leaf])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 
 ovn_init_ic_db
 
diff --git a/tests/ovn-macros.at b/tests/ovn-macros.at
index 8744ff6b3..dd91af3b5 100644
--- a/tests/ovn-macros.at
+++ b/tests/ovn-macros.at
@@ -536,6 +536,11 @@ m4_define([OVN_CLEANUP_IC],[
     fi
 ])
 
+m4_define([OVN_SCAPY_REQUIRED],[
+    AT_SKIP_IF([test $HAVE_SCAPY = no])
+    start_scapy_server
+])
+
 m4_divert_push([PREPARE_TESTS])
 
 # ovn_init_db DATABASE [AZ]
@@ -1294,7 +1299,6 @@ hex_to_mac() {
 }
 
 send_garp() {
-    AT_SKIP_IF([test $HAVE_SCAPY = no])
     local hv=$1 inport=$2 op=$3 eth_src=$4 eth_dst=$5 spa=$6 tpa=$7
 
     local packet=$(fmt_pkt "Ether(dst='${eth_dst}', src='${eth_src}')/ \
@@ -1380,10 +1384,6 @@ ovn_trace_client() {
 #
 fmt_pkt() {
     ctlfile=$ovs_base/scapy.ctl
-    if [[ ! -S $ctlfile ]]; then
-        start_scapy_server
-    fi
-    while [[ ! -S $ctlfile ]]; do sleep 0.1; done
     ovs-appctl -t $ctlfile payload "$1"
 }
 
@@ -1396,6 +1396,7 @@ start_scapy_server() {
     flock -n $lockfile "$top_srcdir"/tests/scapy-server.py \
         --pidfile=$pidfile --unixctl=$ctlfile --log-file=$logfile --detach \
     && on_exit "test -e \"$pidfile\" && ovs-appctl -t $ctlfile exit"
+    while [[ ! -S $ctlfile ]]; do sleep 0.1; done
 }
 
 sleep_northd() {
@@ -1587,7 +1588,6 @@ m4_define([TAG_TEST_NOT_UPGRADABLE], [
 
 m4_define([OVN_CHECK_SCAPY_EDNS_CLIENT_SUBNET_SUPPORT],
 [
-    AT_SKIP_IF([test $HAVE_SCAPY = no])
     AT_SKIP_IF([! echo "from scapy.layers.dns import EDNS0ClientSubnet" | 
python 2>&1 > /dev/null])
 ])
 
diff --git a/tests/ovn-util.at b/tests/ovn-util.at
index 004799b4c..76bb568e7 100644
--- a/tests/ovn-util.at
+++ b/tests/ovn-util.at
@@ -1,5 +1,4 @@
 AT_SETUP([ovn-detrace - simple scenario])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
 ovn_start
 net_add n1
 
diff --git a/tests/ovn.at b/tests/ovn.at
index 522c1c90d..8391c3e97 100644
--- a/tests/ovn.at
+++ b/tests/ovn.at
@@ -2524,7 +2524,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([ovn -- allows ACLs to match against vlan-transparent double tagged 
traffic L3 fields])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 for i in 1 2; do
@@ -2607,7 +2607,7 @@ OVN_FOR_EACH_NORTHD_FLOW_TUNNEL([
 AT_SETUP([3 HVs, 1 LS, 3 lports/HV])
 AT_KEYWORDS([ovnarp])
 AT_KEYWORDS([slowtest])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Create hypervisors hv[123].
@@ -3894,7 +3894,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([VLAN transparency, passthru=true, ARP responder disabled])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add net
@@ -3974,7 +3974,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([VLAN transparency, passthru=true, ND/NA responder disabled])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add net
@@ -4523,7 +4523,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([vtep: 3 HVs, 1 VIFs/HV, 1 GW, 1 LS])
 AT_KEYWORDS([vtep])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Configure the Northbound database
@@ -5024,7 +5024,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD_FLOW_TUNNEL([
 AT_SETUP([3 HVs, 3 LS, 3 lports/LS, 1 LR])
 AT_KEYWORDS([slowtest])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -5470,7 +5470,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD_FLOW_TUNNEL([
 AT_SETUP([IP relocation using GARP request])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -5731,7 +5731,7 @@ AT_CLEANUP
 # 3 hypervisors, one logical switch, 3 logical ports per hypervisor
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([portsecurity : 3 HVs, 1 LS, 3 lports/HV])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Create hypervisors hv[123].
@@ -6289,7 +6289,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([1 HV, 1 LS, 2 lport/LS, 1 LR])
 AT_KEYWORDS([router-admin-state])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -6399,7 +6399,7 @@ OVN_FOR_EACH_NORTHD([
 AT_SETUP([1 HV, 2 LSs, 1 lport/LS, 1 LR])
 AT_KEYWORDS([router-admin-state])
 TAG_UNSTABLE
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -6490,7 +6490,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 3 LS, 1 lport/LS, 2 peer LRs, static routes])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -6690,7 +6690,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 3 LRs connected via LS, static routes])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -7587,7 +7587,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([dhcpv6 : 1 HV, 2 LS, 5 LSPs])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 check ovn-nbctl ls-add ls1
@@ -7924,7 +7924,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LRs connected via LS, gateway router])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -8109,7 +8109,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([spine-leaf: 1 HV, 3 LSs, connected via spine switch])
 AT_KEYWORDS([spine leaf])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -8306,7 +8306,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([spine-leaf: 3 HVs, 3 LSs, connected via distributed spine switch])
 AT_KEYWORDS([spine leaf])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -8550,7 +8550,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([icmp_reply: 1 HVs, 2 LSs, 1 lport/LS, 1 LR])
 AT_KEYWORDS([router-icmp-reply])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -10202,7 +10202,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([ARP/ND from localnet -- proxy reply on resident chassis only])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 dnl Create logical switch with localnet port.
@@ -12534,6 +12534,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([dns lookup : EDNS])
+OVN_SCAPY_REQUIRED
 OVN_CHECK_SCAPY_EDNS_CLIENT_SUBNET_SUPPORT()
 ovn_start
 
@@ -12827,6 +12828,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([4 HV, 3 LS, 2 LR, packet test with HA distributed router gateway 
port])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -13842,7 +13844,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([IPv6 ND Router Solicitation responder])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 AT_KEYWORDS([ovn-nd_ra])
 ovn_start
 
@@ -14350,7 +14352,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([localport suppress gARP])
 AT_SKIP_IF([test $HAVE_TCPDUMP = no])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -14415,7 +14417,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([localport doesn't suppress ARP directed to external port])
 AT_SKIP_IF([test $HAVE_TCPDUMP = no])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 
 ovn_start
 net_add n1
@@ -15301,7 +15303,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([allow IPv6 RA / NA / MLD by default])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 net_add n1
 sim_add hv1
@@ -16241,7 +16243,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([localnet connectivity with multiple requested-chassis])
 AT_KEYWORDS([multi-chassis])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -16630,7 +16632,7 @@ m4_define([MULTICHASSIS_PATH_MTU_DISCOVERY_TEST],
   [OVN_FOR_EACH_NORTHD([
    AT_SETUP([localnet connectivity with multiple requested-chassis, path mtu 
discovery (ip=$1, tunnel=$2, mtu=$3)])
    AT_KEYWORDS([multi-chassis])
-   AT_SKIP_IF([test $HAVE_SCAPY = no])
+   OVN_SCAPY_REQUIRED
 
    ovn_start
 
@@ -16966,7 +16968,7 @@ m4_define([ACTIVATION_STRATEGY_TEST],
     AT_SETUP([options:activation-strategy=$1 for logical port])
     AT_KEYWORDS([multi-chassis])
     AT_KEYWORDS([slowtest])
-    AT_SKIP_IF([test $HAVE_SCAPY = no])
+    OVN_SCAPY_REQUIRED
     ovn_start
 
     net_add n1
@@ -18104,7 +18106,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([IPv6 periodic gateway RA enabled for localnet adjacent switch ports])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -22705,7 +22707,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([IP packet buffering])
 AT_KEYWORDS([ip-buffering])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -23443,7 +23445,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([virtual ports])
 AT_KEYWORDS([virtual ports])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 send_nd_ns() {
@@ -26235,7 +26237,7 @@ DVR_N_S_PING([vxlan])
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([ARP lookup before learning])
 AT_KEYWORDS([virtual ports])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 send_arp_reply() {
@@ -26585,7 +26587,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([Disabling RARP/GARP announcements from Router options])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -32101,7 +32103,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([multiple encap ips selection based on VIF's encap_ip - L2])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 net_add n1
 
@@ -32222,7 +32224,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([multiple encap ips selection based on VIF's encap_ip - L3])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 net_add n1
 
@@ -32364,7 +32366,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([multiple encap ips selection for localnet packets])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 net_add n1
 
@@ -36678,7 +36680,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -36937,7 +36939,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging - port deletion])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -37031,7 +37033,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging - persistence of the active entry])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -37159,7 +37161,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging - probing])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 aging_th=10
@@ -37281,7 +37283,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging - probing multi-subnet source IP])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 aging_th=10
@@ -37398,7 +37400,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging - probing distributed GW router])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Check that during mac probing only the chassis that has currently claimed
@@ -37470,7 +37472,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([MAC binding aging - probing GW router Dynamic Neigh])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 send_imcp_echo_req() {
@@ -39493,7 +39495,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([FDB aging])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -39570,7 +39572,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([FDB aging - persistence of the active entry])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -39650,7 +39652,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([DNAT_SNAT and LB traffic])
 AT_KEYWORDS([dnat-snat-lb])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 test_ip_req_packet() {
@@ -40082,7 +40084,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([virtual port claim race condition])
 AT_KEYWORDS([virtual ports])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -40162,7 +40164,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([pod to pod with localnet_learn_fdb])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 
 # 10 VIFs, 5 per HV: vif11, vif12, vif13, vif14 and vif15 on hv1.
 # vif11 will exchange packets with vif21, vif12 w/ vif22 and so on.
@@ -40995,7 +40997,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([QoS packet marking])
 AT_KEYWORDS([ovn-qos-pkt-marking])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 check ovn-nbctl lr-add lr0
@@ -41758,7 +41760,7 @@ dnl don't match on IPv6 source and destination 
addresses for
 dnl simple switching.
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([IPv6 switching - megaflow check for IPv6 src/dst matches])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 check ovn-nbctl ls-add sw0
@@ -41924,7 +41926,7 @@ dnl This test checks that the megaflows translated by 
ovs-vswitchd don't
 dnl have extensive matches on external IP addresses for simple routing.
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([IPv4/v6 routing to external - megaflow check for src/dst matches])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 check ovn-nbctl ls-add sw0
@@ -42627,7 +42629,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, 2 peer LRs, IPv4 over IPv6])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -42747,7 +42749,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, LRs connected via LS, IPv4 over IPv6])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -42875,7 +42877,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, LRs connected via LS, IPv4 over IPv6, 
static mac])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -43009,7 +43011,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, LRs connected via LS, IPv4 over IPv6, 
dynamic])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -43139,7 +43141,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, LRs connected via LS, IPv6 over IPv4, 
dynamic])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -43269,7 +43271,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, LRs connected via LS, IPv4 over IPv6, ECMP])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -43412,7 +43414,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([2 HVs, 2 LS, 1 lport/LS, 2 peer LRs, IPv6 over IPv4])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 # Logical network:
@@ -43532,7 +43534,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([DNS reply packet with ACL to drop it])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 net_add n1
 sim_add hv1
@@ -44143,7 +44145,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([Load balancer hairpin flows])
 AT_KEYWORDS([lb])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -44221,7 +44223,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([lb_force_snat_ip=router_ip select correct network for snat])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 check ovn-nbctl lr-add lr
@@ -44301,7 +44303,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([virtual port claim postpone])
 AT_KEYWORDS([virtual ports])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -44398,6 +44400,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([virtual port - parent port re-create])
 AT_KEYWORDS([virtual ports])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -44870,7 +44873,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([Unicast ARP when proxy ARP is configured])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 check ovn-nbctl ls-add ls1
@@ -44944,7 +44947,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([Port security - VRRPv3 ARP/ND])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 net_add n1
 sim_add hv1
@@ -45955,7 +45958,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([Drop unknown eth type on router ports])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
@@ -46160,6 +46163,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([IPv4 over v6 Neigh solicitation test])
+OVN_SCAPY_REQUIRED
 ovn_start
 
 net_add n1
diff --git a/tests/system-ovn.at b/tests/system-ovn.at
index cfcc3f197..3e17065bc 100644
--- a/tests/system-ovn.at
+++ b/tests/system-ovn.at
@@ -7815,7 +7815,7 @@ AT_CLEANUP
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([ovn -- CoPP])
 AT_SKIP_IF([test $HAVE_TCPDUMP = no])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 AT_KEYWORDS([ovn-copp])
 
 ovn_start
@@ -21657,7 +21657,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([ACL - ICMP unreachable heap overread])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 
 ovn_start
 
@@ -21740,7 +21740,7 @@ AT_CLEANUP
 
 OVN_FOR_EACH_NORTHD([
 AT_SETUP([DHCPv6 - Options heap overread])
-AT_SKIP_IF([test $HAVE_SCAPY = no])
+OVN_SCAPY_REQUIRED
 
 ovn_start
 
-- 
2.47.1

_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to