Change the bootstrap script file and test the CI-management.
[csit.git] / resources / traffic_scripts / send_vxlangpe_nsh_for_sff_test.py
index b82e2a8..55c06f0 100755 (executable)
@@ -21,11 +21,11 @@ import time
 from scapy.layers.inet import IP, UDP, TCP
 from scapy.layers.inet6 import IPv6
 from scapy.all import Ether, Packet, Raw
 from scapy.layers.inet import IP, UDP, TCP
 from scapy.layers.inet6 import IPv6
 from scapy.all import Ether, Packet, Raw
-from scapy.all import sendp
 
 from resources.libraries.python.SFC.VerifyPacket import *
 from resources.libraries.python.SFC.SFCConstants import SFCConstants as sfccon
 from resources.libraries.python.TrafficScriptArg import TrafficScriptArg
 
 from resources.libraries.python.SFC.VerifyPacket import *
 from resources.libraries.python.SFC.SFCConstants import SFCConstants as sfccon
 from resources.libraries.python.TrafficScriptArg import TrafficScriptArg
+from resources.libraries.python.PacketVerifier import RxQueue, TxQueue
 
 from robot.api import logger
 
 
 from robot.api import logger
 
@@ -48,6 +48,10 @@ def main():
     frame_size = int(args.get_arg('framesize'))
     test_type = args.get_arg('testtype')
 
     frame_size = int(args.get_arg('framesize'))
     test_type = args.get_arg('testtype')
 
+    rxq = RxQueue(rx_if)
+    txq = TxQueue(tx_if)
+    sent_packets = []
+
     protocol = TCP
     source_port = sfccon.DEF_SRC_PORT
     destination_port = sfccon.DEF_DST_PORT
     protocol = TCP
     source_port = sfccon.DEF_SRC_PORT
     destination_port = sfccon.DEF_DST_PORT
@@ -81,12 +85,17 @@ def main():
 
     pkt_raw = pkt_header / Raw(load=pad_data)
 
 
     pkt_raw = pkt_header / Raw(load=pad_data)
 
-    sendp(pkt_raw, iface=tx_if, count=3)
+    # Send created packet on one interface and receive on the other
+    sent_packets.append(pkt_raw)
+    txq.send(pkt_raw)
+
+    ether = rxq.recv(2)
 
 
-    time.sleep(timeout)
+    if ether is None:
+        raise RuntimeError("No packet is received!")
 
     # let us begin to check the sfc sff packet
 
     # let us begin to check the sfc sff packet
-    VerifyPacket.check_the_nsh_sfc_packet(frame_size, test_type)
+    VerifyPacket.check_the_nsh_sfc_packet(ether, frame_size, test_type)
 
     # we check all the fields about the sfc sff, this test will pass
     sys.exit(0)
 
     # we check all the fields about the sfc sff, this test will pass
     sys.exit(0)