30311abb87da7f2d74d2b528730fa0755d1eea0d
Tests using CtsNetUtils.TestNetworkCallback would generally assume that waitForAvailable would return a non-null Network if onAvailable was called after it was registered. However this is not true if a network was available, then lost before waitForAvailable is called. This can typically happen if wifi was disconnected just before calling ensureWifiConnected (so wifi is being toggled). In case onUnavailable was called, always wait for the next onAvailable callback, so that waitForAvailable always waits for a network to be available. So: Old behavior: 1) registerNetworkCallback called 2) onAvailable called 3) onLost called 4) waitForAvailable called -> returns null immediately 5) onAvailable called -> unused New behavior: 1) registerNetworkCallback called 2) onAvailable called 3) onLost called 4) waitForAvailable called -> blocks 5) onAvailable called -> waitForAvailable returns the network Bug: 190913510 Test: atest CtsNetTestCases Change-Id: I6bde82ad787371ecffd6caa950b52d90a29ab20b
Description
android_packages_modules_Connectivity
Languages
Java
81.4%
Kotlin
7.7%
AIDL
4.5%
C++
4.5%
C
1.7%
Other
0.1%