sta_connect: Make logic more verbose

Signed-off-by: Matthew Stidham <stidmatt@gmail.com>
This commit is contained in:
Matthew Stidham
2021-12-16 08:36:06 -08:00
parent 114e561605
commit 849deb89c2

View File

@@ -64,10 +64,8 @@ class StaConnect(Realm):
self.cleanup_on_exit = _cleanup_on_exit self.cleanup_on_exit = _cleanup_on_exit
self.sta_url_map = None # defer construction self.sta_url_map = None # defer construction
self.upstream_url = None # defer construction self.upstream_url = None # defer construction
self.station_names = [] self.station_names = _sta_name
self.cx_names = {} self.cx_names = {}
if _sta_name is not None:
self.station_names = [_sta_name]
self.resulting_stations = {} self.resulting_stations = {}
self.resulting_endpoints = {} self.resulting_endpoints = {}
@@ -169,7 +167,7 @@ class StaConnect(Realm):
self.clear_test_results() self.clear_test_results()
self.check_connect() self.check_connect()
eth1IP = self.json_get(self.get_upstream_url()) eth1IP = self.json_get(self.get_upstream_url())
if eth1IP is None: if not eth1IP:
self._fail("Unable to query %s, bye" % self.upstream_port, True) self._fail("Unable to query %s, bye" % self.upstream_port, True)
return False return False
if eth1IP['interface']['ip'] == "0.0.0.0": if eth1IP['interface']['ip'] == "0.0.0.0":
@@ -179,8 +177,8 @@ class StaConnect(Realm):
for sta_name in self.station_names: for sta_name in self.station_names:
sta_url = self.get_station_url(sta_name) sta_url = self.get_station_url(sta_name)
response = self.json_get(sta_url) response = self.json_get(sta_url)
if response is not None: if response:
if response["interface"] is not None: if response["interface"]:
print("removing old station") print("removing old station")
if self.port_exists(sta_name): if self.port_exists(sta_name):
self.rm_port(sta_name) self.rm_port(sta_name)
@@ -246,7 +244,7 @@ class StaConnect(Realm):
station_info = self.json_get(sta_url + "?fields=port,ip,ap") station_info = self.json_get(sta_url + "?fields=port,ip,ap")
# LFUtils.debug_printer.pprint(station_info) # LFUtils.debug_printer.pprint(station_info)
if (station_info is not None) and ("interface" in station_info): if station_info and "interface" in station_info:
if "ip" in station_info["interface"]: if "ip" in station_info["interface"]:
ip = station_info["interface"]["ip"] ip = station_info["interface"]["ip"]
if "ap" in station_info["interface"]: if "ap" in station_info["interface"]:
@@ -491,8 +489,6 @@ class StaConnect(Realm):
def main(): def main():
lfjson_host = "localhost"
lfjson_port = 8080
parser = Realm.create_basic_argparse( parser = Realm.create_basic_argparse(
prog="sta_connect.py", prog="sta_connect.py",
formatter_class=argparse.RawTextHelpFormatter, formatter_class=argparse.RawTextHelpFormatter,
@@ -500,7 +496,7 @@ def main():
Example: Example:
./sta_connect.py --mgr 192.168.100.209 --dut_ssid OpenWrt-2 --dut_bssid 24:F5:A2:08:21:6C ./sta_connect.py --mgr 192.168.100.209 --dut_ssid OpenWrt-2 --dut_bssid 24:F5:A2:08:21:6C
""") """)
parser.add_argument("-o", "--port", type=int, help="IP Port the LANforge GUI is listening on (8080 is default)") parser.add_argument("-o", "--port", type=int, help="IP Port the LANforge GUI is listening on (8080 is default)", default=8080)
parser.add_argument("--resource", type=str, help="LANforge Station resource ID to use, default is 1") parser.add_argument("--resource", type=str, help="LANforge Station resource ID to use, default is 1")
parser.add_argument("--upstream_resource", type=str, help="LANforge Ethernet port resource ID to use, default is 1") parser.add_argument("--upstream_resource", type=str, help="LANforge Ethernet port resource ID to use, default is 1")
parser.add_argument("--sta_mode", type=str, parser.add_argument("--sta_mode", type=str,
@@ -510,29 +506,12 @@ Example:
args = parser.parse_args() args = parser.parse_args()
monitor_interval = Realm.parse_time(args.test_duration).total_seconds() monitor_interval = Realm.parse_time(args.test_duration).total_seconds()
if args.mgr is not None:
lfjson_host = args.mgr
if args.port is not None:
lfjson_port = args.port
staConnect = StaConnect(lfjson_host, lfjson_port, _upstream_port=args.upstream_port, _runtime_sec=monitor_interval) staConnect = StaConnect(args.mgr, args.port, _upstream_port=args.upstream_port, _runtime_sec=monitor_interval,
staConnect.station_names = ["sta0000"] _sta_mode=args.sta_mode, _upstream_resource=args.upstream_resource,
if args.sta_mode is not None: _radio=args.radio, _resource=args.resource, _passwd=args.passwd, _dut_passwd=args.passwd,
staConnect.sta_mode = args.sta_mode _dut_bssid=args.dut_bssid, _dut_ssid=args.ssid, _dut_security=args.security,
if args.upstream_resource is not None: _sta_name=["sta0000"])
staConnect.upstream_resource = args.upstream_resource
if args.radio is not None:
staConnect.radio = args.radio
if args.resource is not None:
staConnect.resource = args.resource
if args.passwd is not None:
staConnect.dut_passwd = args.passwd
if args.dut_bssid is not None:
staConnect.dut_bssid = args.dut_bssid
if args.ssid is not None:
staConnect.dut_ssid = args.ssid
if args.security is not None:
staConnect.dut_security = args.security
staConnect.run() staConnect.run()