[NS A36] Add a test for lost trusted capability
This bug will be drive-by fixed by the next refactoring, so set up a test to see the difference. Bug: 113554781 Test: this Change-Id: Icb062ffbae904d1836a4a16fc5395687c3eda7b6
This commit is contained in:
@@ -5741,6 +5741,40 @@ public class ConnectivityServiceTest {
|
|||||||
mCm.unregisterNetworkCallback(defaultCallback);
|
mCm.unregisterNetworkCallback(defaultCallback);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public final void testLoseTrusted() throws Exception {
|
||||||
|
final NetworkRequest trustedRequest = new NetworkRequest.Builder()
|
||||||
|
.addCapability(NET_CAPABILITY_TRUSTED)
|
||||||
|
.build();
|
||||||
|
final TestNetworkCallback trustedCallback = new TestNetworkCallback();
|
||||||
|
mCm.requestNetwork(trustedRequest, trustedCallback);
|
||||||
|
|
||||||
|
mCellNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_CELLULAR);
|
||||||
|
mCellNetworkAgent.connect(true);
|
||||||
|
trustedCallback.expectAvailableThenValidatedCallbacks(mCellNetworkAgent);
|
||||||
|
verify(mNetworkManagementService).setDefaultNetId(eq(mCellNetworkAgent.getNetwork().netId));
|
||||||
|
|
||||||
|
mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI);
|
||||||
|
mWiFiNetworkAgent.connect(true);
|
||||||
|
trustedCallback.expectAvailableDoubleValidatedCallbacks(mWiFiNetworkAgent);
|
||||||
|
verify(mNetworkManagementService).setDefaultNetId(eq(mWiFiNetworkAgent.getNetwork().netId));
|
||||||
|
|
||||||
|
mWiFiNetworkAgent.removeCapability(NET_CAPABILITY_TRUSTED);
|
||||||
|
// There is currently a bug where losing the TRUSTED capability will send a LOST
|
||||||
|
// callback to requests before the available callback, in spite of the semantics
|
||||||
|
// of the requests dictating this should not happen. This is considered benign, but
|
||||||
|
// ideally should be fixed in the future.
|
||||||
|
trustedCallback.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent);
|
||||||
|
trustedCallback.expectAvailableCallbacksValidated(mCellNetworkAgent);
|
||||||
|
verify(mNetworkManagementService).setDefaultNetId(eq(mCellNetworkAgent.getNetwork().netId));
|
||||||
|
|
||||||
|
mCellNetworkAgent.removeCapability(NET_CAPABILITY_TRUSTED);
|
||||||
|
trustedCallback.expectCallback(CallbackEntry.LOST, mCellNetworkAgent);
|
||||||
|
verify(mNetworkManagementService).clearDefaultNetId();
|
||||||
|
|
||||||
|
mCm.unregisterNetworkCallback(trustedCallback);
|
||||||
|
}
|
||||||
|
|
||||||
@Ignore // 40%+ flakiness : figure out why and re-enable.
|
@Ignore // 40%+ flakiness : figure out why and re-enable.
|
||||||
@Test
|
@Test
|
||||||
public final void testBatteryStatsNetworkType() throws Exception {
|
public final void testBatteryStatsNetworkType() throws Exception {
|
||||||
|
|||||||
Reference in New Issue
Block a user