diff mbox series

[02/17] tests: ft/rrm: wait for STA before check_beacon_req()

Message ID 20230925092039.419e3b129b6a.I7cc4b1b96d93d0659636424f491e03ba41b638e1@changeid
State Accepted
Headers show
Series tests: some scheduling and other fixes | expand

Commit Message

Johannes Berg Sept. 25, 2023, 7:20 a.m. UTC
From: Johannes Berg <johannes.berg@intel.com>

check_beacon_req() will request from hostapd to request a beacon
report from the STA, but that only works if it already knows about
the STA. Due to scheduling issues, it may not know even if wpa_s
reports it has successfully connected, so also wait for the STA to
show up in hostapd before check_beacon_req().

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
 tests/hwsim/test_ap_ft.py | 3 +++
 tests/hwsim/test_rrm.py   | 4 ++++
 2 files changed, 7 insertions(+)
diff mbox series

Patch

diff --git a/tests/hwsim/test_ap_ft.py b/tests/hwsim/test_ap_ft.py
index a2f1a4ead431..0e9d04775e56 100644
--- a/tests/hwsim/test_ap_ft.py
+++ b/tests/hwsim/test_ap_ft.py
@@ -3476,6 +3476,7 @@  def test_ap_ft_roam_rrm(dev, apdev):
     dev[0].flush_scan_cache()
     dev[0].connect(ssid, psk=passphrase, key_mgmt="FT-PSK", proto="WPA2",
                    scan_freq="2412")
+    hapd0.wait_sta()
     check_beacon_req(hapd0, addr, 1)
 
     params = ft_params2(ssid=ssid, passphrase=passphrase)
@@ -3485,10 +3486,12 @@  def test_ap_ft_roam_rrm(dev, apdev):
 
     dev[0].scan_for_bss(bssid1, freq=2412)
     dev[0].roam(bssid1)
+    hapd1.wait_sta()
     check_beacon_req(hapd1, addr, 2)
 
     dev[0].scan_for_bss(bssid0, freq=2412)
     dev[0].roam(bssid0)
+    hapd0.wait_sta()
     check_beacon_req(hapd0, addr, 3)
 
 def test_ap_ft_pmksa_caching(dev, apdev):
diff --git a/tests/hwsim/test_rrm.py b/tests/hwsim/test_rrm.py
index a67554f0aebf..86cde92936b4 100644
--- a/tests/hwsim/test_rrm.py
+++ b/tests/hwsim/test_rrm.py
@@ -2193,18 +2193,22 @@  def test_rrm_reassociation(dev, apdev):
     addr = dev[0].own_addr()
     dev[0].flush_scan_cache()
     dev[0].connect("rrm", key_mgmt="NONE", scan_freq="2412")
+    hapd.wait_sta()
     check_beacon_req(hapd, addr, 1)
 
     dev[0].request("REASSOCIATE")
     dev[0].wait_connected()
+    hapd.wait_sta()
     check_beacon_req(hapd, addr, 1)
 
     hapd2 = hostapd.add_ap(apdev[1]['ifname'], params)
     bssid2 = hapd2.own_addr()
     dev[0].scan_for_bss(bssid2, freq=2412)
     dev[0].roam(bssid2)
+    hapd2.wait_sta()
     check_beacon_req(hapd2, addr, 2)
 
     dev[0].scan_for_bss(bssid, freq=2412)
     dev[0].roam(bssid)
+    hapd.wait_sta()
     check_beacon_req(hapd, addr, 3)