From ac069a31ded8758ed1d5d09c6ecb534970896ba9 Mon Sep 17 00:00:00 2001 From: Jouni Malinen Date: Thu, 1 Aug 2019 15:44:22 +0300 Subject: [PATCH] tests: Make scan_bss_expiration_count more robust with UML Test case sequence "persistent_group_channel scan_bss_expiration_count" was failing with UML when using time travel. This seemed to be because there was no explicit wait to confirm that the AP has been fully disabled before running the next scan. Work around this by verifying that hostapd has terminated the BSS and waiting a bit after that before proceeding. Signed-off-by: Jouni Malinen --- tests/hwsim/test_scan.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/hwsim/test_scan.py b/tests/hwsim/test_scan.py index 220ce2b12..0b302d504 100644 --- a/tests/hwsim/test_scan.py +++ b/tests/hwsim/test_scan.py @@ -162,6 +162,11 @@ def test_scan_bss_expiration_count(dev, apdev): if bssid not in dev[0].request("SCAN_RESULTS"): raise Exception("BSS not found in initial scan") hapd.request("DISABLE") + # Try to give enough time for hostapd to have stopped mac80211 from + # beaconing before checking a new scan. This is needed with UML time travel + # testing. + hapd.ping() + time.sleep(0.2) dev[0].scan(freq="2412", only_new=True) if bssid not in dev[0].request("SCAN_RESULTS"): raise Exception("BSS not found in first scan without match")