tests: Add a simple wmediumd test
If wmediumd is available on the path, test that it can forward packets between two virtual nodes and that stopping it makes the regular in-kernel datapath do the needed work again. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
f6c09bf46e
commit
10a15590f8
2 changed files with 47 additions and 0 deletions
|
@ -19,6 +19,9 @@ from wpasupplicant import WpaSupplicant
|
||||||
|
|
||||||
def test_ap_open(dev, apdev):
|
def test_ap_open(dev, apdev):
|
||||||
"""AP with open mode (no security) configuration"""
|
"""AP with open mode (no security) configuration"""
|
||||||
|
_test_ap_open(dev, apdev)
|
||||||
|
|
||||||
|
def _test_ap_open(dev, apdev):
|
||||||
hapd = hostapd.add_ap(apdev[0]['ifname'], { "ssid": "open" })
|
hapd = hostapd.add_ap(apdev[0]['ifname'], { "ssid": "open" })
|
||||||
dev[0].connect("open", key_mgmt="NONE", scan_freq="2412",
|
dev[0].connect("open", key_mgmt="NONE", scan_freq="2412",
|
||||||
bg_scan_period="0")
|
bg_scan_period="0")
|
||||||
|
|
44
tests/hwsim/test_wmediumd.py
Normal file
44
tests/hwsim/test_wmediumd.py
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
# wmediumd sanity checks
|
||||||
|
# Copyright (c) 2015, Intel Deutschland GmbH
|
||||||
|
#
|
||||||
|
# This software may be distributed under the terms of the BSD license.
|
||||||
|
# See README for more details.
|
||||||
|
|
||||||
|
import tempfile, os, subprocess, errno
|
||||||
|
from utils import HwsimSkip
|
||||||
|
from test_ap_open import _test_ap_open
|
||||||
|
|
||||||
|
CFG = """
|
||||||
|
ifaces :
|
||||||
|
{
|
||||||
|
ids = ["%s", "%s" ];
|
||||||
|
links = (
|
||||||
|
(0, 1, 30)
|
||||||
|
);
|
||||||
|
};
|
||||||
|
"""
|
||||||
|
|
||||||
|
def test_wmediumd_simple(dev, apdev):
|
||||||
|
"""test a simple wmediumd configuration"""
|
||||||
|
fd, fn = tempfile.mkstemp()
|
||||||
|
try:
|
||||||
|
f = os.fdopen(fd, 'w')
|
||||||
|
f.write(CFG % (apdev[0]['bssid'], dev[0].own_addr()))
|
||||||
|
f.close()
|
||||||
|
try:
|
||||||
|
p = subprocess.Popen(['wmediumd', '-c', fn],
|
||||||
|
stdout=open('/dev/null', 'a'),
|
||||||
|
stderr=subprocess.STDOUT)
|
||||||
|
except OSError, e:
|
||||||
|
if e.errno == errno.ENOENT:
|
||||||
|
raise HwsimSkip("wmediumd not available")
|
||||||
|
raise
|
||||||
|
try:
|
||||||
|
_test_ap_open(dev, apdev)
|
||||||
|
finally:
|
||||||
|
p.terminate()
|
||||||
|
p.wait()
|
||||||
|
# test that releasing hwsim works correctly
|
||||||
|
_test_ap_open(dev, apdev);
|
||||||
|
finally:
|
||||||
|
os.unlink(fn)
|
Loading…
Reference in a new issue