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 <jouni@codeaurora.org>
This commit is contained in:
Jouni Malinen 2019-08-01 15:44:22 +03:00 committed by Jouni Malinen
parent bef411a91b
commit ac069a31de

View File

@ -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")