]> git.ipfire.org Git - thirdparty/hostap.git/commitdiff
tests: SCAN_INTERVAL setting
authorJouni Malinen <j@w1.fi>
Sat, 12 Apr 2014 16:48:57 +0000 (19:48 +0300)
committerJouni Malinen <j@w1.fi>
Sun, 13 Apr 2014 07:26:53 +0000 (10:26 +0300)
Signed-off-by: Jouni Malinen <j@w1.fi>
tests/hwsim/test_scan.py

index f11cdbdee9f05cf4112478cde2e345a375d80d4d..f13218f8e42ddfd6acbb368c2a9c40edb27bd5f8 100644 (file)
@@ -7,6 +7,7 @@
 import time
 import logging
 logger = logging.getLogger()
+import os
 import subprocess
 
 import hostapd
@@ -168,3 +169,31 @@ def test_scan_filter(dev, apdev):
             raise Exception("Unexpected BSS found in scan results")
     finally:
         dev[0].request("SET filter_ssids 0")
+
+def test_scan_int(dev, apdev):
+    """scan interval configuration"""
+    try:
+        if "FAIL" not in dev[0].request("SCAN_INTERVAL -1"):
+            raise Exception("Accepted invalid scan interval")
+        if "OK" not in dev[0].request("SCAN_INTERVAL 1"):
+            raise Exception("Failed to set scan interval")
+        dev[0].connect("not-used", key_mgmt="NONE", scan_freq="2412",
+                       wait_connect=False)
+        times = {}
+        for i in range(0, 3):
+            logger.info("Waiting for scan to start")
+            start = os.times()[4]
+            ev = dev[0].wait_event(["CTRL-EVENT-SCAN-STARTED"], timeout=5)
+            if ev is None:
+                raise Exception("did not start a scan")
+            stop = os.times()[4]
+            times[i] = stop - start
+            logger.info("Waiting for scan to complete")
+            ev = dev[0].wait_event(["CTRL-EVENT-SCAN-RESULTS"], 10)
+            if ev is None:
+                raise Exception("did not complete a scan")
+        print times
+        if times[0] > 1 or times[1] < 0.5 or times[1] > 1.5 or times[2] < 0.5 or times[2] > 1.5:
+            raise Exception("Unexpected scan timing: " + str(times))
+    finally:
+        dev[0].request("SCAN_INTERVAL 5")