diff options
author | Jouni Malinen <j@w1.fi> | 2016-04-24 09:28:18 (GMT) |
---|---|---|
committer | Jouni Malinen <j@w1.fi> | 2016-04-24 17:16:30 (GMT) |
commit | 5a766accee00218c60468ab322daeee2019b6e79 (patch) | |
tree | 6585dfb00913f81b7f37f197a76d22ab2543b21c | |
parent | 2147b3a7f8ce4dbb3cb5a85efd012faa3f3b6c18 (diff) | |
download | hostap-5a766accee00218c60468ab322daeee2019b6e79.zip hostap-5a766accee00218c60468ab322daeee2019b6e79.tar.gz hostap-5a766accee00218c60468ab322daeee2019b6e79.tar.bz2 |
tests: Convert Host() class to use list of arguments instead of string
It is better to use a list of command line arguments for the local
execution case and convert that to a space-separated string for the
remote case.
Signed-off-by: Jouni Malinen <j@w1.fi>
-rw-r--r-- | tests/hwsim/remotehost.py | 14 | ||||
-rw-r--r-- | tests/hwsim/utils.py | 2 | ||||
-rw-r--r-- | tests/hwsim/wpasupplicant.py | 6 |
3 files changed, 9 insertions, 13 deletions
diff --git a/tests/hwsim/remotehost.py b/tests/hwsim/remotehost.py index cab2045..213c2fc 100644 --- a/tests/hwsim/remotehost.py +++ b/tests/hwsim/remotehost.py @@ -38,14 +38,10 @@ class Host(): self.name = host def local_execute(self, command): - logger.debug("execute: " + command) - words = command.split() - cmd = [] - for word in words: - cmd.append(word) + logger.debug("execute: " + str(command)) try: status = 0; - buf = subprocess.check_output(cmd, stderr=subprocess.STDOUT) + buf = subprocess.check_output(command, stderr=subprocess.STDOUT) except subprocess.CalledProcessError as e: status = e.returncode buf = e.output @@ -58,7 +54,7 @@ class Host(): if self.host is None: return self.local_execute(command) - cmd = ["ssh", self.user + "@" + self.host, command] + cmd = ["ssh", self.user + "@" + self.host, ' '.join(command)] _cmd = self.name + " execute: " for c in cmd: _cmd = _cmd + " " + c @@ -77,9 +73,9 @@ class Host(): # async execute def execute_run(self, command, res): if self.host is None: - cmd = [command] + cmd = command else: - cmd = ["ssh", self.user + "@" + self.host, command] + cmd = ["ssh", self.user + "@" + self.host, ' '.join(command)] _cmd = self.name + " execute_run: " for c in cmd: _cmd = _cmd + " " + c diff --git a/tests/hwsim/utils.py b/tests/hwsim/utils.py index 5fb824e..479923c 100644 --- a/tests/hwsim/utils.py +++ b/tests/hwsim/utils.py @@ -92,7 +92,7 @@ def get_phy(ap, ifname=None): if ifname == None: ifname = ap['ifname'] - status, buf = host.execute("iw dev " + ifname + " info") + status, buf = host.execute(["iw", "dev", ifname, "info"]) if status != 0: raise Exception("iw " + ifname + " info failed") lines = buf.split("\n") diff --git a/tests/hwsim/wpasupplicant.py b/tests/hwsim/wpasupplicant.py index bc865b8..b164fe0 100644 --- a/tests/hwsim/wpasupplicant.py +++ b/tests/hwsim/wpasupplicant.py @@ -99,7 +99,7 @@ class WpaSupplicant: def interface_add(self, ifname, config="", driver="nl80211", drv_params=None, br_ifname=None, create=False, set_ifname=True, all_params=False, if_type=None): - status, groups = self.host.execute("id") + status, groups = self.host.execute(["id"]) if status != 0: group = "admin" group = "admin" if "(admin)" in groups else "adm" @@ -191,11 +191,11 @@ class WpaSupplicant: if iter == 60: logger.error(self.ifname + ": Driver scan state did not clear") print "Trying to clear cfg80211/mac80211 scan state" - status, buf = self.host.execute("ifconfig " + self.ifname + " down") + status, buf = self.host.execute(["ifconfig", self.ifname, "down"]) if status != 0: logger.info("ifconfig failed: " + buf) logger.info(status) - status, buf = self.host.execute("ifconfig " + self.ifname + " up") + status, buf = self.host.execute(["ifconfig", self.ifname, "up"]) if status != 0: logger.info("ifconfig failed: " + buf) logger.info(status) |