diff options
| author | 2010-07-28 11:34:18 -0700 | |
|---|---|---|
| committer | 2010-07-28 11:34:18 -0700 | |
| commit | 28d32cd16ac3e246f35bc06cd79fc27e9b84f613 (patch) | |
| tree | cee9e878c39ea7b6cd7d54864e2f11a9108c69cd | |
| parent | 48a16ce36ecd30e9a786a6318a811436e5fa5427 (diff) | |
| parent | 69a5a9666281013fbc5f528b724b6c84e61d5962 (diff) | |
Merge "Wait for broadcast even if the network state has been changed. bug: 2863356"
| -rw-r--r-- | core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/functional/ConnectivityManagerMobileTest.java | 76 |
1 files changed, 38 insertions, 38 deletions
diff --git a/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/functional/ConnectivityManagerMobileTest.java b/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/functional/ConnectivityManagerMobileTest.java index cdaefc853079..ad8d444114d7 100644 --- a/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/functional/ConnectivityManagerMobileTest.java +++ b/core/tests/ConnectivityManagerTest/src/com/android/connectivitymanagertest/functional/ConnectivityManagerMobileTest.java @@ -91,30 +91,30 @@ public class ConnectivityManagerMobileTest // DISCONNECTING, DISCONNECTED, UNKNOWN private void waitForNetworkState(int networkType, State expectedState, long timeout) { long startTime = System.currentTimeMillis(); - // In case the broadcast is already sent out, no need to wait - if (cmActivity.mCM.getNetworkInfo(networkType).getState() == expectedState) { - return; - } else { - while (true) { - if ((System.currentTimeMillis() - startTime) > timeout) { + while (true) { + if ((System.currentTimeMillis() - startTime) > timeout) { + if (cmActivity.mCM.getNetworkInfo(networkType).getState() != expectedState) { assertFalse("Wait for network state timeout", true); + } else { + // the broadcast has been sent out. the state has been changed. + return; + } + } + Log.v(LOG_TAG, "Wait for the connectivity state for network: " + networkType + + " to be " + expectedState.toString()); + synchronized (cmActivity.connectivityObject) { + try { + cmActivity.connectivityObject.wait(STATE_TRANSITION_SHORT_TIMEOUT); + } catch (InterruptedException e) { + e.printStackTrace(); } - Log.v(LOG_TAG, "Wait for the connectivity state for network: " + networkType + - " to be " + expectedState.toString()); - synchronized (cmActivity.connectivityObject) { - try { - cmActivity.connectivityObject.wait(STATE_TRANSITION_SHORT_TIMEOUT); - } catch (InterruptedException e) { - e.printStackTrace(); - } - if ((cmActivity.mNetworkInfo.getType() != networkType) || - (cmActivity.mNetworkInfo.getState() != expectedState)) { - Log.v(LOG_TAG, "network state for " + cmActivity.mNetworkInfo.getType() + - "is: " + cmActivity.mNetworkInfo.getState()); - continue; - } - break; + if ((cmActivity.mNetworkInfo.getType() != networkType) || + (cmActivity.mNetworkInfo.getState() != expectedState)) { + Log.v(LOG_TAG, "network state for " + cmActivity.mNetworkInfo.getType() + + "is: " + cmActivity.mNetworkInfo.getState()); + continue; } + break; } } } @@ -123,26 +123,26 @@ public class ConnectivityManagerMobileTest // WIFI_STATE_ENALBING, WIFI_STATE_UNKNOWN private void waitForWifiState(int expectedState, long timeout) { long startTime = System.currentTimeMillis(); - if (cmActivity.mWifiState == expectedState) { - return; - } else { - while (true) { - if ((System.currentTimeMillis() - startTime) > timeout) { + while (true) { + if ((System.currentTimeMillis() - startTime) > timeout) { + if (cmActivity.mWifiState != expectedState) { assertFalse("Wait for Wifi state timeout", true); + } else { + return; + } + } + Log.v(LOG_TAG, "Wait for wifi state to be: " + expectedState); + synchronized (cmActivity.wifiObject) { + try { + cmActivity.wifiObject.wait(5*1000); + } catch (InterruptedException e) { + e.printStackTrace(); } - Log.v(LOG_TAG, "Wait for wifi state to be: " + expectedState); - synchronized (cmActivity.wifiObject) { - try { - cmActivity.wifiObject.wait(5*1000); - } catch (InterruptedException e) { - e.printStackTrace(); - } - if (cmActivity.mWifiState != expectedState) { - Log.v(LOG_TAG, "Wifi state is: " + cmActivity.mWifiNetworkInfo.getState()); - continue; - } - break; + if (cmActivity.mWifiState != expectedState) { + Log.v(LOG_TAG, "Wifi state is: " + cmActivity.mWifiNetworkInfo.getState()); + continue; } + break; } } } |