Backport test coverage from aosp/1547496.
This test coverage is necessary to fix an upcoming bug in R. Backport it from the change that added it. The non-test portion of that change is not necessary in R because it fixes a bug that was introduced in S. Bug: 172870110 Test: accompanying unit test shows lots of bugs removed Change-Id: If7eb8857474d8b4f774f5fa5db2a3112e85c9cae Merged-In: Ibf376a6fa4b34d1c96f8506fa8abbb7595a8c272 (cherry picked from commit 55229beb747b9e7b8a0f392d855a1b3342df8646)
This commit is contained in:
committed by
android-build-team Robot
parent
3536dc7df7
commit
5aa7b53d66
@@ -5521,32 +5521,40 @@ public class ConnectivityServiceTest {
|
||||
assertNetworkInfo(TYPE_MOBILE, DetailedState.CONNECTED);
|
||||
assertNetworkInfo(TYPE_WIFI, DetailedState.DISCONNECTED);
|
||||
assertNetworkInfo(TYPE_VPN, DetailedState.SUSPENDED); // BUG: VPN caps have NOT_SUSPENDED.
|
||||
assertNull(mCm.getActiveNetworkInfo()); // ???
|
||||
assertActiveNetworkInfo(TYPE_MOBILE, DetailedState.CONNECTED);
|
||||
// BUG: the device has connectivity, so this should return true.
|
||||
assertGetNetworkInfoOfGetActiveNetworkIsConnected(false);
|
||||
|
||||
// Suspending and resuming reveals other bugs.
|
||||
// Re-suspending the current network fixes the problem.
|
||||
mCellNetworkAgent.suspend();
|
||||
callback.assertNoCallback(); // BUG: should get callback that VPN is suspended.
|
||||
callback.expectCapabilitiesThat(mMockVpn,
|
||||
nc -> !nc.hasCapability(NET_CAPABILITY_NOT_SUSPENDED)
|
||||
&& nc.hasTransport(TRANSPORT_CELLULAR));
|
||||
callback.expectCallback(CallbackEntry.SUSPENDED, mMockVpn);
|
||||
callback.assertNoCallback();
|
||||
|
||||
assertTrue(mCm.getNetworkCapabilities(mMockVpn.getNetwork())
|
||||
.hasCapability(NET_CAPABILITY_NOT_SUSPENDED)); // BUG: VPN should be SUSPENDED.
|
||||
assertFalse(mCm.getNetworkCapabilities(mMockVpn.getNetwork())
|
||||
.hasCapability(NET_CAPABILITY_NOT_SUSPENDED));
|
||||
assertNetworkInfo(TYPE_MOBILE, DetailedState.SUSPENDED);
|
||||
assertNetworkInfo(TYPE_WIFI, DetailedState.DISCONNECTED);
|
||||
assertNetworkInfo(TYPE_VPN, DetailedState.SUSPENDED);
|
||||
assertNull(mCm.getActiveNetworkInfo()); // ???
|
||||
assertActiveNetworkInfo(TYPE_MOBILE, DetailedState.SUSPENDED);
|
||||
assertGetNetworkInfoOfGetActiveNetworkIsConnected(false);
|
||||
|
||||
mCellNetworkAgent.resume();
|
||||
callback.assertNoCallback(); // BUG: should get callback that VPN is no longer suspended.
|
||||
callback.expectCapabilitiesThat(mMockVpn,
|
||||
nc -> nc.hasCapability(NET_CAPABILITY_NOT_SUSPENDED)
|
||||
&& nc.hasTransport(TRANSPORT_CELLULAR));
|
||||
callback.expectCallback(CallbackEntry.RESUMED, mMockVpn);
|
||||
callback.assertNoCallback();
|
||||
|
||||
assertTrue(mCm.getNetworkCapabilities(mMockVpn.getNetwork())
|
||||
.hasCapability(NET_CAPABILITY_NOT_SUSPENDED));
|
||||
assertNetworkInfo(TYPE_MOBILE, DetailedState.CONNECTED);
|
||||
assertNetworkInfo(TYPE_WIFI, DetailedState.DISCONNECTED);
|
||||
assertNetworkInfo(TYPE_VPN, DetailedState.SUSPENDED);
|
||||
assertNull(mCm.getActiveNetworkInfo()); // ???
|
||||
assertGetNetworkInfoOfGetActiveNetworkIsConnected(false);
|
||||
assertNetworkInfo(TYPE_VPN, DetailedState.CONNECTED);
|
||||
assertActiveNetworkInfo(TYPE_MOBILE, DetailedState.CONNECTED);
|
||||
assertGetNetworkInfoOfGetActiveNetworkIsConnected(true);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
Reference in New Issue
Block a user