Loading tests/net/java/com/android/server/ConnectivityServiceTest.java +55 −45 Original line number Original line Diff line number Diff line Loading @@ -2158,6 +2158,24 @@ public class ConnectivityServiceTest { } } } } static void expectOnLost(TestNetworkAgentWrapper network, TestNetworkCallback ... callbacks) { for (TestNetworkCallback c : callbacks) { c.expectCallback(CallbackEntry.LOST, network); } } static void expectAvailableCallbacksUnvalidatedWithSpecifier(TestNetworkAgentWrapper network, NetworkSpecifier specifier, TestNetworkCallback ... callbacks) { for (TestNetworkCallback c : callbacks) { c.expectCallback(CallbackEntry.AVAILABLE, network); c.expectCapabilitiesThat(network, (nc) -> !nc.hasCapability(NET_CAPABILITY_VALIDATED) && Objects.equals(specifier, nc.getNetworkSpecifier())); c.expectCallback(CallbackEntry.LINK_PROPERTIES_CHANGED, network); c.expectCallback(CallbackEntry.BLOCKED_STATUS, network); } } @Test @Test public void testStateChangeNetworkCallbacks() throws Exception { public void testStateChangeNetworkCallbacks() throws Exception { final TestNetworkCallback genericNetworkCallback = new TestNetworkCallback(); final TestNetworkCallback genericNetworkCallback = new TestNetworkCallback(); Loading Loading @@ -3521,11 +3539,9 @@ public class ConnectivityServiceTest { /** /** * Verify request matching behavior with network specifiers. * Verify request matching behavior with network specifiers. * * * Note: this test is somewhat problematic since it involves removing capabilities from * This test does not check updating the specifier on a live network because the specifier is * agents - i.e. agents rejecting requests which they previously accepted. This is flagged * immutable and this triggers a WTF in * as a WTF bug in * {@link ConnectivityService#mixInCapabilities(NetworkAgentInfo, NetworkCapabilities)}. * {@link ConnectivityService#mixInCapabilities(NetworkAgentInfo, NetworkCapabilities)} but * does work. */ */ @Test @Test public void testNetworkSpecifier() throws Exception { public void testNetworkSpecifier() throws Exception { Loading Loading @@ -3610,60 +3626,49 @@ public class ConnectivityServiceTest { mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.connect(false); mWiFiNetworkAgent.connect(false); cEmpty1.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, null /* specifier */, cEmpty2.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); cEmpty1, cEmpty2, cEmpty3, cEmpty4); cEmpty3.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); cEmpty4.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); assertNoCallbacks(cFoo, cBar); assertNoCallbacks(cFoo, cBar); mWiFiNetworkAgent.disconnect(); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.setNetworkSpecifier(nsFoo); mWiFiNetworkAgent.setNetworkSpecifier(nsFoo); cFoo.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); mWiFiNetworkAgent.connect(false); for (TestNetworkCallback c: emptyCallbacks) { expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, nsFoo, c.expectCapabilitiesThat(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo); (caps) -> caps.getNetworkSpecifier().equals(nsFoo)); cBar.assertNoCallback(); } cFoo.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier().equals(nsFoo)); assertEquals(nsFoo, assertEquals(nsFoo, mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); cFoo.assertNoCallback(); assertNoCallbacks(cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo); mWiFiNetworkAgent.disconnect(); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.setNetworkSpecifier(nsBar); mWiFiNetworkAgent.setNetworkSpecifier(nsBar); cFoo.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent); mWiFiNetworkAgent.connect(false); cBar.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, nsBar, for (TestNetworkCallback c: emptyCallbacks) { cEmpty1, cEmpty2, cEmpty3, cEmpty4, cBar); c.expectCapabilitiesThat(mWiFiNetworkAgent, cFoo.assertNoCallback(); (caps) -> caps.getNetworkSpecifier().equals(nsBar)); } cBar.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier().equals(nsBar)); assertEquals(nsBar, assertEquals(nsBar, mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); cBar.assertNoCallback(); mWiFiNetworkAgent.disconnect(); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cBar); cFoo.assertNoCallback(); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.setNetworkSpecifier(new ConfidentialMatchAllNetworkSpecifier()); mWiFiNetworkAgent.setNetworkSpecifier(new ConfidentialMatchAllNetworkSpecifier()); cFoo.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); mWiFiNetworkAgent.connect(false); for (TestNetworkCallback c : emptyCallbacks) { expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, null /* specifier */, c.expectCapabilitiesThat(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo, cBar); (caps) -> caps.getNetworkSpecifier() == null); } cFoo.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier() == null); cBar.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier() == null); assertNull( assertNull( mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); cFoo.assertNoCallback(); cBar.assertNoCallback(); mWiFiNetworkAgent.setNetworkSpecifier(null); mWiFiNetworkAgent.disconnect(); cFoo.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo, cBar); cBar.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent); for (TestNetworkCallback c: emptyCallbacks) { c.expectCallback(CallbackEntry.NETWORK_CAPS_UPDATED, mWiFiNetworkAgent); } assertNoCallbacks(cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo, cBar); } } /** /** Loading Loading @@ -6818,6 +6823,7 @@ public class ConnectivityServiceTest { .thenReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)); .thenReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)); final Intent addedIntent = new Intent(ACTION_USER_ADDED); final Intent addedIntent = new Intent(ACTION_USER_ADDED); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); // Send a USER_ADDED broadcast for it. // Send a USER_ADDED broadcast for it. Loading @@ -6844,6 +6850,7 @@ public class ConnectivityServiceTest { // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. final Intent removedIntent = new Intent(ACTION_USER_REMOVED); final Intent removedIntent = new Intent(ACTION_USER_REMOVED); removedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); processBroadcastForVpn(removedIntent); processBroadcastForVpn(removedIntent); Loading Loading @@ -6901,6 +6908,7 @@ public class ConnectivityServiceTest { RESTRICTED_USER_INFO)); RESTRICTED_USER_INFO)); // TODO: check that VPN app within restricted profile still has access, etc. // TODO: check that VPN app within restricted profile still has access, etc. final Intent addedIntent = new Intent(ACTION_USER_ADDED); final Intent addedIntent = new Intent(ACTION_USER_ADDED); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); processBroadcastForVpn(addedIntent); processBroadcastForVpn(addedIntent); assertNull(mCm.getActiveNetworkForUid(uid)); assertNull(mCm.getActiveNetworkForUid(uid)); Loading @@ -6911,6 +6919,7 @@ public class ConnectivityServiceTest { // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. final Intent removedIntent = new Intent(ACTION_USER_REMOVED); final Intent removedIntent = new Intent(ACTION_USER_REMOVED); removedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); processBroadcastForVpn(removedIntent); processBroadcastForVpn(removedIntent); assertNull(mCm.getActiveNetworkForUid(uid)); assertNull(mCm.getActiveNetworkForUid(uid)); Loading Loading @@ -7505,6 +7514,7 @@ public class ConnectivityServiceTest { // Send a USER_UNLOCKED broadcast so CS starts LockdownVpnTracker. // Send a USER_UNLOCKED broadcast so CS starts LockdownVpnTracker. final int userId = UserHandle.getUserId(Process.myUid()); final int userId = UserHandle.getUserId(Process.myUid()); final Intent addedIntent = new Intent(ACTION_USER_UNLOCKED); final Intent addedIntent = new Intent(ACTION_USER_UNLOCKED); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(userId)); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, userId); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, userId); processBroadcastForVpn(addedIntent); processBroadcastForVpn(addedIntent); Loading tests/net/java/com/android/server/connectivity/NetworkNotificationManagerTest.java +4 −0 Original line number Original line Diff line number Diff line Loading @@ -49,6 +49,7 @@ import com.android.server.connectivity.NetworkNotificationManager.NotificationTy import org.junit.AfterClass; import org.junit.AfterClass; import org.junit.Before; import org.junit.Before; import org.junit.BeforeClass; import org.junit.BeforeClass; import org.junit.Ignore; import org.junit.Test; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runner.RunWith; import org.mockito.AdditionalAnswers; import org.mockito.AdditionalAnswers; Loading Loading @@ -183,6 +184,9 @@ public class NetworkNotificationManagerTest { } } @Test @Test @Ignore // Ignored because the code under test calls Log.wtf, which crashes the tests on eng builds. // TODO: re-enable after fixing this (e.g., turn Log.wtf into exceptions that this test catches) public void testNoInternetNotificationsNotShownForCellular() { public void testNoInternetNotificationsNotShownForCellular() { mManager.showNotification(100, NO_INTERNET, mCellNai, mWifiNai, null, false); mManager.showNotification(100, NO_INTERNET, mCellNai, mWifiNai, null, false); mManager.showNotification(101, LOST_INTERNET, mCellNai, mWifiNai, null, false); mManager.showNotification(101, LOST_INTERNET, mCellNai, mWifiNai, null, false); Loading Loading
tests/net/java/com/android/server/ConnectivityServiceTest.java +55 −45 Original line number Original line Diff line number Diff line Loading @@ -2158,6 +2158,24 @@ public class ConnectivityServiceTest { } } } } static void expectOnLost(TestNetworkAgentWrapper network, TestNetworkCallback ... callbacks) { for (TestNetworkCallback c : callbacks) { c.expectCallback(CallbackEntry.LOST, network); } } static void expectAvailableCallbacksUnvalidatedWithSpecifier(TestNetworkAgentWrapper network, NetworkSpecifier specifier, TestNetworkCallback ... callbacks) { for (TestNetworkCallback c : callbacks) { c.expectCallback(CallbackEntry.AVAILABLE, network); c.expectCapabilitiesThat(network, (nc) -> !nc.hasCapability(NET_CAPABILITY_VALIDATED) && Objects.equals(specifier, nc.getNetworkSpecifier())); c.expectCallback(CallbackEntry.LINK_PROPERTIES_CHANGED, network); c.expectCallback(CallbackEntry.BLOCKED_STATUS, network); } } @Test @Test public void testStateChangeNetworkCallbacks() throws Exception { public void testStateChangeNetworkCallbacks() throws Exception { final TestNetworkCallback genericNetworkCallback = new TestNetworkCallback(); final TestNetworkCallback genericNetworkCallback = new TestNetworkCallback(); Loading Loading @@ -3521,11 +3539,9 @@ public class ConnectivityServiceTest { /** /** * Verify request matching behavior with network specifiers. * Verify request matching behavior with network specifiers. * * * Note: this test is somewhat problematic since it involves removing capabilities from * This test does not check updating the specifier on a live network because the specifier is * agents - i.e. agents rejecting requests which they previously accepted. This is flagged * immutable and this triggers a WTF in * as a WTF bug in * {@link ConnectivityService#mixInCapabilities(NetworkAgentInfo, NetworkCapabilities)}. * {@link ConnectivityService#mixInCapabilities(NetworkAgentInfo, NetworkCapabilities)} but * does work. */ */ @Test @Test public void testNetworkSpecifier() throws Exception { public void testNetworkSpecifier() throws Exception { Loading Loading @@ -3610,60 +3626,49 @@ public class ConnectivityServiceTest { mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.connect(false); mWiFiNetworkAgent.connect(false); cEmpty1.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, null /* specifier */, cEmpty2.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); cEmpty1, cEmpty2, cEmpty3, cEmpty4); cEmpty3.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); cEmpty4.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); assertNoCallbacks(cFoo, cBar); assertNoCallbacks(cFoo, cBar); mWiFiNetworkAgent.disconnect(); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.setNetworkSpecifier(nsFoo); mWiFiNetworkAgent.setNetworkSpecifier(nsFoo); cFoo.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); mWiFiNetworkAgent.connect(false); for (TestNetworkCallback c: emptyCallbacks) { expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, nsFoo, c.expectCapabilitiesThat(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo); (caps) -> caps.getNetworkSpecifier().equals(nsFoo)); cBar.assertNoCallback(); } cFoo.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier().equals(nsFoo)); assertEquals(nsFoo, assertEquals(nsFoo, mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); cFoo.assertNoCallback(); assertNoCallbacks(cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo); mWiFiNetworkAgent.disconnect(); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.setNetworkSpecifier(nsBar); mWiFiNetworkAgent.setNetworkSpecifier(nsBar); cFoo.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent); mWiFiNetworkAgent.connect(false); cBar.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, nsBar, for (TestNetworkCallback c: emptyCallbacks) { cEmpty1, cEmpty2, cEmpty3, cEmpty4, cBar); c.expectCapabilitiesThat(mWiFiNetworkAgent, cFoo.assertNoCallback(); (caps) -> caps.getNetworkSpecifier().equals(nsBar)); } cBar.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier().equals(nsBar)); assertEquals(nsBar, assertEquals(nsBar, mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); cBar.assertNoCallback(); mWiFiNetworkAgent.disconnect(); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cBar); cFoo.assertNoCallback(); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent.setNetworkSpecifier(new ConfidentialMatchAllNetworkSpecifier()); mWiFiNetworkAgent.setNetworkSpecifier(new ConfidentialMatchAllNetworkSpecifier()); cFoo.expectAvailableCallbacksUnvalidated(mWiFiNetworkAgent); mWiFiNetworkAgent.connect(false); for (TestNetworkCallback c : emptyCallbacks) { expectAvailableCallbacksUnvalidatedWithSpecifier(mWiFiNetworkAgent, null /* specifier */, c.expectCapabilitiesThat(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo, cBar); (caps) -> caps.getNetworkSpecifier() == null); } cFoo.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier() == null); cBar.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) -> caps.getNetworkSpecifier() == null); assertNull( assertNull( mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); mCm.getNetworkCapabilities(mWiFiNetworkAgent.getNetwork()).getNetworkSpecifier()); cFoo.assertNoCallback(); cBar.assertNoCallback(); mWiFiNetworkAgent.setNetworkSpecifier(null); mWiFiNetworkAgent.disconnect(); cFoo.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent); expectOnLost(mWiFiNetworkAgent, cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo, cBar); cBar.expectCallback(CallbackEntry.LOST, mWiFiNetworkAgent); for (TestNetworkCallback c: emptyCallbacks) { c.expectCallback(CallbackEntry.NETWORK_CAPS_UPDATED, mWiFiNetworkAgent); } assertNoCallbacks(cEmpty1, cEmpty2, cEmpty3, cEmpty4, cFoo, cBar); } } /** /** Loading Loading @@ -6818,6 +6823,7 @@ public class ConnectivityServiceTest { .thenReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)); .thenReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)); final Intent addedIntent = new Intent(ACTION_USER_ADDED); final Intent addedIntent = new Intent(ACTION_USER_ADDED); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); // Send a USER_ADDED broadcast for it. // Send a USER_ADDED broadcast for it. Loading @@ -6844,6 +6850,7 @@ public class ConnectivityServiceTest { // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. final Intent removedIntent = new Intent(ACTION_USER_REMOVED); final Intent removedIntent = new Intent(ACTION_USER_REMOVED); removedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); processBroadcastForVpn(removedIntent); processBroadcastForVpn(removedIntent); Loading Loading @@ -6901,6 +6908,7 @@ public class ConnectivityServiceTest { RESTRICTED_USER_INFO)); RESTRICTED_USER_INFO)); // TODO: check that VPN app within restricted profile still has access, etc. // TODO: check that VPN app within restricted profile still has access, etc. final Intent addedIntent = new Intent(ACTION_USER_ADDED); final Intent addedIntent = new Intent(ACTION_USER_ADDED); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); processBroadcastForVpn(addedIntent); processBroadcastForVpn(addedIntent); assertNull(mCm.getActiveNetworkForUid(uid)); assertNull(mCm.getActiveNetworkForUid(uid)); Loading @@ -6911,6 +6919,7 @@ public class ConnectivityServiceTest { // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. // Send a USER_REMOVED broadcast and expect to lose the UID range for the restricted user. final Intent removedIntent = new Intent(ACTION_USER_REMOVED); final Intent removedIntent = new Intent(ACTION_USER_REMOVED); removedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(RESTRICTED_USER)); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); removedIntent.putExtra(Intent.EXTRA_USER_HANDLE, RESTRICTED_USER); processBroadcastForVpn(removedIntent); processBroadcastForVpn(removedIntent); assertNull(mCm.getActiveNetworkForUid(uid)); assertNull(mCm.getActiveNetworkForUid(uid)); Loading Loading @@ -7505,6 +7514,7 @@ public class ConnectivityServiceTest { // Send a USER_UNLOCKED broadcast so CS starts LockdownVpnTracker. // Send a USER_UNLOCKED broadcast so CS starts LockdownVpnTracker. final int userId = UserHandle.getUserId(Process.myUid()); final int userId = UserHandle.getUserId(Process.myUid()); final Intent addedIntent = new Intent(ACTION_USER_UNLOCKED); final Intent addedIntent = new Intent(ACTION_USER_UNLOCKED); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(userId)); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, userId); addedIntent.putExtra(Intent.EXTRA_USER_HANDLE, userId); processBroadcastForVpn(addedIntent); processBroadcastForVpn(addedIntent); Loading
tests/net/java/com/android/server/connectivity/NetworkNotificationManagerTest.java +4 −0 Original line number Original line Diff line number Diff line Loading @@ -49,6 +49,7 @@ import com.android.server.connectivity.NetworkNotificationManager.NotificationTy import org.junit.AfterClass; import org.junit.AfterClass; import org.junit.Before; import org.junit.Before; import org.junit.BeforeClass; import org.junit.BeforeClass; import org.junit.Ignore; import org.junit.Test; import org.junit.Test; import org.junit.runner.RunWith; import org.junit.runner.RunWith; import org.mockito.AdditionalAnswers; import org.mockito.AdditionalAnswers; Loading Loading @@ -183,6 +184,9 @@ public class NetworkNotificationManagerTest { } } @Test @Test @Ignore // Ignored because the code under test calls Log.wtf, which crashes the tests on eng builds. // TODO: re-enable after fixing this (e.g., turn Log.wtf into exceptions that this test catches) public void testNoInternetNotificationsNotShownForCellular() { public void testNoInternetNotificationsNotShownForCellular() { mManager.showNotification(100, NO_INTERNET, mCellNai, mWifiNai, null, false); mManager.showNotification(100, NO_INTERNET, mCellNai, mWifiNai, null, false); mManager.showNotification(101, LOST_INTERNET, mCellNai, mWifiNai, null, false); mManager.showNotification(101, LOST_INTERNET, mCellNai, mWifiNai, null, false); Loading