Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(428)

Unified Diff: server/site_bsd_router.py

Issue 1512032: WiFi test cleanups (Closed)
Patch Set: Created 10 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: server/site_bsd_router.py
diff --git a/server/site_bsd_router.py b/server/site_bsd_router.py
index f7679a84598ed0e003354eae4d7c9434afbdf130..8ba9a449cf330bae04181a6f6c9a1f6784488335 100644
--- a/server/site_bsd_router.py
+++ b/server/site_bsd_router.py
@@ -4,6 +4,19 @@
import logging, re
+def isBSDRouter(router):
+ router_uname = router.run('uname').stdout
+ return re.search('BSD', router_uname)
+
+def find_ifnet(host, pattern):
+ list = host.run("ifconfig -l").stdout
+ for ifnet in list.split():
+ status = host.run("ifconfig %s" % ifnet).stdout
+ m = re.search(pattern, status)
+ if m:
+ return ifnet
+ return None
+
class NotImplemented(Exception):
def __init__(self, what):
self.what = what
@@ -26,10 +39,20 @@ class BSDRouter(object):
def __init__(self, host, params, defssid):
self.router = host
- # TODO(sleffler) default to 1st available wireless nic
- self.phydev = params['phydev']
- # TODO(sleffler) default to 1st available wired nic
- self.wiredif = params['wiredev']
+ # default to 1st available wireless nic
+ if "phydev" not in params:
+ self.phydev = find_ifnet(host, ".*media:.IEEE.802.11.*")
+ if self.phydev is None:
+ raise Exception("No wireless NIC found")
+ else:
+ self.phydev = params['phydev']
+ # default to 1st available wired nic
+ if "wiredev" not in params:
+ self.wiredif = find_ifnet(host, ".*media:.Ethernet.*")
+ if self.wiredif is None:
+ raise Exception("No wired NIC found")
+ else:
+ self.wiredif = params['wiredev']
self.defssid = defssid;
self.wlanif = None
self.bridgeif = None
@@ -49,7 +72,6 @@ class BSDRouter(object):
ignore_status=True)
self.router.run("killall hostapd >/dev/null 2>&1", ignore_status=True)
-
def create(self, params):
""" Create a wifi device of the specified type """

Powered by Google App Engine
This is Rietveld 408576698