python-scapy: Ignore failing ptests

These tests fail in OE qemu environment and is sensitive to ISP provider

Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Khem Raj 2025-11-20 00:32:16 -08:00
parent 92bbf44733
commit 3e44699820
No known key found for this signature in database
GPG Key ID: BB053355919D3314
3 changed files with 52 additions and 1 deletions

View File

@ -0,0 +1,50 @@
From 511d965d6dd440fc0ae6b702feff06cb6718140e Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com>
Date: Thu, 20 Nov 2025 00:05:55 -0800
Subject: [PATCH] python3-scapy: skip ICMP regression tests in ptest
The UTScapy regression campaign contains two ICMP-based tests:
- "Latency check: localhost ICMP"
- "Sending and receiving an ICMPv6EchoRequest"
Both rely on raw ICMP sockets and/or external IPv6 connectivity
(www.google.com), which are not guaranteed to be available in the
ptest environment. As a result they systematically fail and cause
the whole ptest run to be reported as failed.
Tag these tests with the "skipped_ptest" keyword so they can be
filtered out by the ptest runner via `-K skipped_ptest`. Additionally,
mark the ICMPv6 test with `@pytest.mark.skip` to avoid running it
under pytest-based harnesses that import regression.uts.
This keeps ptest results stable while still allowing developers to
run these tests manually in a properly networked environment.
Upstream-Status: Inappropriate [OE-specific]
Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
test/regression.uts | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
--- a/test/regression.uts
+++ b/test/regression.uts
@@ -1732,7 +1732,7 @@ def _test():
retry_test(_test)
= Latency check: localhost ICMP
-~ netaccess needs_root linux latency
+~ netaccess needs_root linux latency skipped_ptest
# Note: still needs to enforce L3RawSocket as this won't work otherwise with libpcap
sock = conf.L3socket
@@ -1840,7 +1840,7 @@ finally:
sck.close()
= Sending and receiving an ICMPv6EchoRequest
-~ netaccess ipv6
+~ netaccess ipv6 skipped_ptest
def _test():
with no_debug_dissector():
x = sr1(IPv6(dst="www.google.com")/ICMPv6EchoRequest(),timeout=3)

View File

@ -6,6 +6,6 @@ if ! nslookup example.com; then
trap "mv /etc/resolv.conf.bak /etc/resolv.conf" INT EXIT
fi
python3 UTscapy.py -t regression.uts -f text -l -C \
python3 UTscapy.py -t regression.uts -f text -l -C -K skipped_ptest \
-o @PTEST_PATH@/scapy_ptest_$(date +%Y%m%d-%H%M%S).log \
2>&1 | sed -e 's/^passed None/PASS:/' -e 's/^failed None/FAIL:/'

View File

@ -18,6 +18,7 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=b234ee4d69f5fce4486a80fdaf4a4263"
#
SRCREV = "8e08cbf759de6709a5b4af6bea3655d293129bb4"
SRC_URI = "git://github.com/secdev/scapy.git;branch=master;protocol=https;tag=v${PV} \
file://0001-python3-scapy-skip-ICMP-regression-tests-in-ptest.patch \
file://run-ptest"
UPSTREAM_CHECK_COMMITS = "1"