X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=csit%2Flibraries%2FCapwapLibrary.py;fp=csit%2Flibraries%2FCapwapLibrary.py;h=89a123a9e72c505ace4f4a4b0b73804f58c9d05b;hb=59e81c38620fa1b61e15771191e35771450b9499;hp=0000000000000000000000000000000000000000;hpb=072f6e3a8d1bdf8f4c663843589c22d93ba07791;p=integration%2Ftest.git diff --git a/csit/libraries/CapwapLibrary.py b/csit/libraries/CapwapLibrary.py new file mode 100644 index 0000000000..89a123a9e7 --- /dev/null +++ b/csit/libraries/CapwapLibrary.py @@ -0,0 +1,36 @@ +""" +Library for the robot based system test tool of the OpenDaylight project. +Authors: Vaibhav Bhatnagar@Brocade +Updated: 2015-06-01 +""" +import socket + +from robot.libraries.BuiltIn import BuiltIn + + +class CapwapLibrary(object): + """Provide many methods to simulate WTPs and their functions.""" + + def __init__(self): + self.builtin = BuiltIn() + + def send_discover(self, ac_ip, wtp_ip='', ip='ip', port=5246): + """Send Discover CAPWAP Packet from a WTP.""" + data = ''.join(chr(x) for x in [0x00, 0x20, 0x01, 0x02, 0x03, 0x04, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]) + self.builtin.log('Sending Discover Packet to: %s' % ac_ip, 'DEBUG') + session = socket.socket(socket.AF_INET, socket.SOCK_DGRAM, socket.IPPROTO_UDP) + session.sendto(data, (ac_ip, port)) + self.builtin.log('Packet Sent', 'DEBUG') + + def get_hostip(self): + """Get Host IP Address.""" + ip_addr = socket.gethostbyname(socket.gethostname()) + return ip_addr + + def get_simulated_wtpip(self, controller): + """Get the Simulated WTP ip based on the controller.""" + if controller == '127.0.0.1': + exp_ip = controller + else: + exp_ip = self.get_hostip() + return exp_ip