From b86d2d495a476fce082f3f193fabb662f3a914e0 Mon Sep 17 00:00:00 2001 From: Pierre LALET Date: Fri, 29 Sep 2017 14:29:05 +0200 Subject: [PATCH] Test specific .{get,has}layer() methods --- test/regression.uts | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/test/regression.uts b/test/regression.uts index dff21aa89..c706feed4 100644 --- a/test/regression.uts +++ b/test/regression.uts @@ -482,6 +482,37 @@ except IndexError: else: False += getlayer with a filter +~ getlayer IP +pkt = IP() / IP(ttl=3) / IP() +assert pkt[IP::{"ttl":3}].ttl == 3 +assert pkt.getlayer(IP, ttl=3).ttl == 3 + += specific haslayer and getlayer implementations for NTP +~ haslayer getlayer NTP +pkt = IP() / UDP() / NTPHeader() +assert NTP in pkt +assert pkt.haslayer(NTP) +assert isinstance(pkt[NTP], NTPHeader) +assert isinstance(pkt.getlayer(NTP), NTPHeader) + += specific haslayer and getlayer implementations for EAP +~ haslayer getlayer EAP +pkt = Ether() / EAPOL() / EAP_MD5() +assert EAP in pkt +assert pkt.haslayer(EAP) +assert isinstance(pkt[EAP], EAP_MD5) +assert isinstance(pkt.getlayer(EAP), EAP_MD5) + += specific haslayer and getlayer implementations for RadiusAttribute +~ haslayer getlayer RadiusAttribute +pkt = RadiusAttr_EAP_Message() +assert RadiusAttribute in pkt +assert pkt.haslayer(RadiusAttribute) +assert isinstance(pkt[RadiusAttribute], RadiusAttr_EAP_Message) +assert isinstance(pkt.getlayer(RadiusAttribute), RadiusAttr_EAP_Message) + + = equality ~ basic w=Ether()/IP()/UDP(dport=53)