Merge "Fix flake in testMobileDataAlwaysOn" am: 02ea3f55c1 am: b9b4ee6d0e
Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1755251
Change-Id: I5ca65eba0f45846df6b75d11d42b67c81fb177c3
diff --git a/tests/unit/java/com/android/server/ConnectivityServiceTest.java b/tests/unit/java/com/android/server/ConnectivityServiceTest.java
index 7003ce6..9d778a0 100644
--- a/tests/unit/java/com/android/server/ConnectivityServiceTest.java
+++ b/tests/unit/java/com/android/server/ConnectivityServiceTest.java
@@ -1170,20 +1170,14 @@
assertEquals(count, getMyRequestCount());
}
- @Override
- public void terminate() {
- super.terminate();
- // Make sure there are no remaining requests unaccounted for.
- HandlerUtils.waitForIdle(mHandlerSendingRequests, TIMEOUT_MS);
- assertNull(mRequestHistory.poll(0, r -> true));
- }
-
// Trigger releasing the request as unfulfillable
public void triggerUnfulfillable(NetworkRequest r) {
super.releaseRequestAsUnfulfillableByAnyFactory(r);
}
public void assertNoRequestChanged() {
+ // Make sure there are no remaining requests unaccounted for.
+ HandlerUtils.waitForIdle(mHandlerSendingRequests, TIMEOUT_MS);
assertNull(mRequestHistory.poll(0, r -> true));
}
}
@@ -3239,6 +3233,7 @@
assertTrue(testFactory.getMyStartRequested());
testFactory.terminate();
+ testFactory.assertNoRequestChanged();
if (networkCallback != null) mCm.unregisterNetworkCallback(networkCallback);
handlerThread.quit();
}
@@ -3323,6 +3318,7 @@
testFactory.setScoreFilter(42);
testFactory.terminate();
+ testFactory.assertNoRequestChanged();
if (i % 2 == 0) {
try {
@@ -4742,6 +4738,9 @@
// and the test factory should see it now that it isn't hopelessly outscored.
mCellNetworkAgent.disconnect();
cellNetworkCallback.expectCallback(CallbackEntry.LOST, mCellNetworkAgent);
+ // Wait for the network to be removed from internal structures before
+ // calling synchronous getter
+ waitForIdle();
assertLength(1, mCm.getAllNetworks());
testFactory.expectRequestAdd();
testFactory.assertRequestCountEquals(1);
@@ -4752,6 +4751,7 @@
mCellNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_CELLULAR);
mCellNetworkAgent.connect(true);
cellNetworkCallback.expectAvailableThenValidatedCallbacks(mCellNetworkAgent);
+ waitForIdle();
assertLength(2, mCm.getAllNetworks());
testFactory.expectRequestRemove();
testFactory.assertRequestCountEquals(0);
@@ -4763,8 +4763,9 @@
cellNetworkCallback.expectCallback(CallbackEntry.LOST, mCellNetworkAgent);
waitForIdle();
assertLength(1, mCm.getAllNetworks());
- } finally {
testFactory.terminate();
+ testFactory.assertNoRequestChanged();
+ } finally {
mCm.unregisterNetworkCallback(cellNetworkCallback);
handlerThread.quit();
}