Merge "Remove "when" usage in ConnectivityServiceTest" am: f697c61406 am: 7366c89d64

Original change: https://android-review.googlesource.com/c/platform/packages/modules/Connectivity/+/1844176

Change-Id: I54a2b95d21f8655c0268d351a4e27b54a2bce579
This commit is contained in:
Treehugger Robot
2021-10-04 10:11:04 +00:00
committed by Automerger Merge Worker

View File

@@ -557,13 +557,13 @@ public class ConnectivityServiceTest {
super(base); super(base);
mInternalResources = spy(base.getResources()); mInternalResources = spy(base.getResources());
when(mInternalResources.getStringArray(com.android.internal.R.array.networkAttributes)) doReturn(new String[] {
.thenReturn(new String[] { "wifi,1,1,1,-1,true",
"wifi,1,1,1,-1,true", "mobile,0,0,0,-1,true",
"mobile,0,0,0,-1,true", "mobile_mms,2,0,2,60000,true",
"mobile_mms,2,0,2,60000,true", "mobile_supl,3,0,2,60000,true",
"mobile_supl,3,0,2,60000,true", }).when(mInternalResources)
}); .getStringArray(com.android.internal.R.array.networkAttributes);
mContentResolver = new MockContentResolver(); mContentResolver = new MockContentResolver();
mContentResolver.addProvider(Settings.AUTHORITY, settingsProvider); mContentResolver.addProvider(Settings.AUTHORITY, settingsProvider);
@@ -1661,21 +1661,21 @@ public class ConnectivityServiceTest {
MockitoAnnotations.initMocks(this); MockitoAnnotations.initMocks(this);
when(mUserManager.getAliveUsers()).thenReturn(asList(PRIMARY_USER_INFO)); doReturn(asList(PRIMARY_USER_INFO)).when(mUserManager).getAliveUsers();
when(mUserManager.getUserHandles(anyBoolean())).thenReturn(asList(PRIMARY_USER_HANDLE)); doReturn(asList(PRIMARY_USER_HANDLE)).when(mUserManager).getUserHandles(anyBoolean());
when(mUserManager.getUserInfo(PRIMARY_USER)).thenReturn(PRIMARY_USER_INFO); doReturn(PRIMARY_USER_INFO).when(mUserManager).getUserInfo(PRIMARY_USER);
// canHaveRestrictedProfile does not take a userId. It applies to the userId of the context // canHaveRestrictedProfile does not take a userId. It applies to the userId of the context
// it was started from, i.e., PRIMARY_USER. // it was started from, i.e., PRIMARY_USER.
when(mUserManager.canHaveRestrictedProfile()).thenReturn(true); doReturn(true).when(mUserManager).canHaveRestrictedProfile();
when(mUserManager.getUserInfo(RESTRICTED_USER)).thenReturn(RESTRICTED_USER_INFO); doReturn(RESTRICTED_USER_INFO).when(mUserManager).getUserInfo(RESTRICTED_USER);
final ApplicationInfo applicationInfo = new ApplicationInfo(); final ApplicationInfo applicationInfo = new ApplicationInfo();
applicationInfo.targetSdkVersion = Build.VERSION_CODES.Q; applicationInfo.targetSdkVersion = Build.VERSION_CODES.Q;
when(mPackageManager.getApplicationInfoAsUser(anyString(), anyInt(), any())) doReturn(applicationInfo).when(mPackageManager)
.thenReturn(applicationInfo); .getApplicationInfoAsUser(anyString(), anyInt(), any());
when(mPackageManager.getTargetSdkVersion(anyString())) doReturn(applicationInfo.targetSdkVersion).when(mPackageManager)
.thenReturn(applicationInfo.targetSdkVersion); .getTargetSdkVersion(anyString());
when(mSystemConfigManager.getSystemPermissionUids(anyString())).thenReturn(new int[0]); doReturn(new int[0]).when(mSystemConfigManager).getSystemPermissionUids(anyString());
// InstrumentationTestRunner prepares a looper, but AndroidJUnitRunner does not. // InstrumentationTestRunner prepares a looper, but AndroidJUnitRunner does not.
// http://b/25897652 . // http://b/25897652 .
@@ -1874,36 +1874,34 @@ public class ConnectivityServiceTest {
final String myPackageName = mContext.getPackageName(); final String myPackageName = mContext.getPackageName();
final PackageInfo myPackageInfo = mContext.getPackageManager().getPackageInfo( final PackageInfo myPackageInfo = mContext.getPackageManager().getPackageInfo(
myPackageName, PackageManager.GET_PERMISSIONS); myPackageName, PackageManager.GET_PERMISSIONS);
when(mPackageManager.getPackagesForUid(Binder.getCallingUid())).thenReturn( doReturn(new String[] {myPackageName}).when(mPackageManager)
new String[] {myPackageName}); .getPackagesForUid(Binder.getCallingUid());
when(mPackageManager.getPackageInfoAsUser(eq(myPackageName), anyInt(), doReturn(myPackageInfo).when(mPackageManager).getPackageInfoAsUser(
eq(UserHandle.getCallingUserId()))).thenReturn(myPackageInfo); eq(myPackageName), anyInt(), eq(UserHandle.getCallingUserId()));
when(mPackageManager.getInstalledPackages(eq(GET_PERMISSIONS | MATCH_ANY_USER))).thenReturn( doReturn(asList(new PackageInfo[] {
asList(new PackageInfo[] { buildPackageInfo(/* SYSTEM */ false, APP1_UID),
buildPackageInfo(/* SYSTEM */ false, APP1_UID), buildPackageInfo(/* SYSTEM */ false, APP2_UID),
buildPackageInfo(/* SYSTEM */ false, APP2_UID), buildPackageInfo(/* SYSTEM */ false, VPN_UID)
buildPackageInfo(/* SYSTEM */ false, VPN_UID) })).when(mPackageManager).getInstalledPackages(eq(GET_PERMISSIONS | MATCH_ANY_USER));
}));
// Create a fake always-on VPN package. // Create a fake always-on VPN package.
final int userId = UserHandle.getCallingUserId(); final int userId = UserHandle.getCallingUserId();
final ApplicationInfo applicationInfo = new ApplicationInfo(); final ApplicationInfo applicationInfo = new ApplicationInfo();
applicationInfo.targetSdkVersion = Build.VERSION_CODES.R; // Always-on supported in N+. applicationInfo.targetSdkVersion = Build.VERSION_CODES.R; // Always-on supported in N+.
when(mPackageManager.getApplicationInfoAsUser(eq(ALWAYS_ON_PACKAGE), anyInt(), doReturn(applicationInfo).when(mPackageManager).getApplicationInfoAsUser(
eq(userId))).thenReturn(applicationInfo); eq(ALWAYS_ON_PACKAGE), anyInt(), eq(userId));
// Minimal mocking to keep Vpn#isAlwaysOnPackageSupported happy. // Minimal mocking to keep Vpn#isAlwaysOnPackageSupported happy.
ResolveInfo rInfo = new ResolveInfo(); ResolveInfo rInfo = new ResolveInfo();
rInfo.serviceInfo = new ServiceInfo(); rInfo.serviceInfo = new ServiceInfo();
rInfo.serviceInfo.metaData = new Bundle(); rInfo.serviceInfo.metaData = new Bundle();
final List<ResolveInfo> services = asList(new ResolveInfo[]{rInfo}); final List<ResolveInfo> services = asList(new ResolveInfo[]{rInfo});
when(mPackageManager.queryIntentServicesAsUser(any(), eq(PackageManager.GET_META_DATA), doReturn(services).when(mPackageManager).queryIntentServicesAsUser(
eq(userId))).thenReturn(services); any(), eq(PackageManager.GET_META_DATA), eq(userId));
when(mPackageManager.getPackageUidAsUser(TEST_PACKAGE_NAME, userId)) doReturn(Process.myUid()).when(mPackageManager).getPackageUidAsUser(
.thenReturn(Process.myUid()); TEST_PACKAGE_NAME, userId);
when(mPackageManager.getPackageUidAsUser(ALWAYS_ON_PACKAGE, userId)) doReturn(VPN_UID).when(mPackageManager).getPackageUidAsUser(ALWAYS_ON_PACKAGE, userId);
.thenReturn(VPN_UID);
} }
private void verifyActiveNetwork(int transport) { private void verifyActiveNetwork(int transport) {
@@ -3179,9 +3177,8 @@ public class ConnectivityServiceTest {
private void grantUsingBackgroundNetworksPermissionForUid( private void grantUsingBackgroundNetworksPermissionForUid(
final int uid, final String packageName) throws Exception { final int uid, final String packageName) throws Exception {
when(mPackageManager.getPackageInfo( doReturn(buildPackageInfo(true /* hasSystemPermission */, uid)).when(mPackageManager)
eq(packageName), eq(GET_PERMISSIONS | MATCH_ANY_USER))) .getPackageInfo(eq(packageName), eq(GET_PERMISSIONS | MATCH_ANY_USER));
.thenReturn(buildPackageInfo(true /* hasSystemPermission */, uid));
mService.mPermissionMonitor.onPackageAdded(packageName, uid); mService.mPermissionMonitor.onPackageAdded(packageName, uid);
} }
@@ -8022,8 +8019,8 @@ public class ConnectivityServiceTest {
callback.expectCapabilitiesThat(mWiFiNetworkAgent, (caps) callback.expectCapabilitiesThat(mWiFiNetworkAgent, (caps)
-> caps.hasCapability(NET_CAPABILITY_VALIDATED)); -> caps.hasCapability(NET_CAPABILITY_VALIDATED));
when(mPackageManager.getPackageUidAsUser(ALWAYS_ON_PACKAGE, RESTRICTED_USER)) doReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)).when(mPackageManager)
.thenReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)); .getPackageUidAsUser(ALWAYS_ON_PACKAGE, RESTRICTED_USER);
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, UserHandle.of(RESTRICTED_USER));
@@ -8107,10 +8104,10 @@ public class ConnectivityServiceTest {
assertNotNull(mCm.getActiveNetworkForUid(restrictedUid)); assertNotNull(mCm.getActiveNetworkForUid(restrictedUid));
// Start the restricted profile, and check that the UID within it loses network access. // Start the restricted profile, and check that the UID within it loses network access.
when(mPackageManager.getPackageUidAsUser(ALWAYS_ON_PACKAGE, RESTRICTED_USER)) doReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)).when(mPackageManager)
.thenReturn(UserHandle.getUid(RESTRICTED_USER, VPN_UID)); .getPackageUidAsUser(ALWAYS_ON_PACKAGE, RESTRICTED_USER);
when(mUserManager.getAliveUsers()).thenReturn(asList(PRIMARY_USER_INFO, doReturn(asList(PRIMARY_USER_INFO, RESTRICTED_USER_INFO)).when(mUserManager)
RESTRICTED_USER_INFO)); .getAliveUsers();
// 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, UserHandle.of(RESTRICTED_USER));
@@ -8120,7 +8117,7 @@ public class ConnectivityServiceTest {
assertNull(mCm.getActiveNetworkForUid(restrictedUid)); assertNull(mCm.getActiveNetworkForUid(restrictedUid));
// Stop the restricted profile, and check that the UID within it has network access again. // Stop the restricted profile, and check that the UID within it has network access again.
when(mUserManager.getAliveUsers()).thenReturn(asList(PRIMARY_USER_INFO)); doReturn(asList(PRIMARY_USER_INFO)).when(mUserManager).getAliveUsers();
// 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);
@@ -8821,7 +8818,7 @@ public class ConnectivityServiceTest {
private void setupLegacyLockdownVpn() { private void setupLegacyLockdownVpn() {
final String profileName = "testVpnProfile"; final String profileName = "testVpnProfile";
final byte[] profileTag = profileName.getBytes(StandardCharsets.UTF_8); final byte[] profileTag = profileName.getBytes(StandardCharsets.UTF_8);
when(mVpnProfileStore.get(Credentials.LOCKDOWN_VPN)).thenReturn(profileTag); doReturn(profileTag).when(mVpnProfileStore).get(Credentials.LOCKDOWN_VPN);
final VpnProfile profile = new VpnProfile(profileName); final VpnProfile profile = new VpnProfile(profileName);
profile.name = "My VPN"; profile.name = "My VPN";
@@ -8829,7 +8826,7 @@ public class ConnectivityServiceTest {
profile.dnsServers = "8.8.8.8"; profile.dnsServers = "8.8.8.8";
profile.type = VpnProfile.TYPE_IPSEC_XAUTH_PSK; profile.type = VpnProfile.TYPE_IPSEC_XAUTH_PSK;
final byte[] encodedProfile = profile.encode(); final byte[] encodedProfile = profile.encode();
when(mVpnProfileStore.get(Credentials.VPN + profileName)).thenReturn(encodedProfile); doReturn(encodedProfile).when(mVpnProfileStore).get(Credentials.VPN + profileName);
} }
private void establishLegacyLockdownVpn(Network underlying) throws Exception { private void establishLegacyLockdownVpn(Network underlying) throws Exception {
@@ -9244,8 +9241,8 @@ public class ConnectivityServiceTest {
verifyNoMoreInteractions(mMockDnsResolver); verifyNoMoreInteractions(mMockDnsResolver);
reset(mMockNetd); reset(mMockNetd);
reset(mMockDnsResolver); reset(mMockDnsResolver);
when(mMockNetd.interfaceGetCfg(CLAT_MOBILE_IFNAME)) doReturn(getClatInterfaceConfigParcel(myIpv4)).when(mMockNetd)
.thenReturn(getClatInterfaceConfigParcel(myIpv4)); .interfaceGetCfg(CLAT_MOBILE_IFNAME);
// Remove IPv4 address. Expect prefix discovery to be started again. // Remove IPv4 address. Expect prefix discovery to be started again.
cellLp.removeLinkAddress(myIpv4); cellLp.removeLinkAddress(myIpv4);
@@ -9295,8 +9292,8 @@ public class ConnectivityServiceTest {
new int[] { TRANSPORT_CELLULAR }); new int[] { TRANSPORT_CELLULAR });
} }
reset(mMockNetd); reset(mMockNetd);
when(mMockNetd.interfaceGetCfg(CLAT_MOBILE_IFNAME)) doReturn(getClatInterfaceConfigParcel(myIpv4)).when(mMockNetd)
.thenReturn(getClatInterfaceConfigParcel(myIpv4)); .interfaceGetCfg(CLAT_MOBILE_IFNAME);
// Change the NAT64 prefix without first removing it. // Change the NAT64 prefix without first removing it.
// Expect clatd to be stopped and started with the new prefix. // Expect clatd to be stopped and started with the new prefix.
mService.mResolverUnsolEventCallback.onNat64PrefixEvent(makeNat64PrefixEvent( mService.mResolverUnsolEventCallback.onNat64PrefixEvent(makeNat64PrefixEvent(
@@ -9344,8 +9341,8 @@ public class ConnectivityServiceTest {
verifyNoMoreInteractions(mMockDnsResolver); verifyNoMoreInteractions(mMockDnsResolver);
reset(mMockNetd); reset(mMockNetd);
reset(mMockDnsResolver); reset(mMockDnsResolver);
when(mMockNetd.interfaceGetCfg(CLAT_MOBILE_IFNAME)) doReturn(getClatInterfaceConfigParcel(myIpv4)).when(mMockNetd)
.thenReturn(getClatInterfaceConfigParcel(myIpv4)); .interfaceGetCfg(CLAT_MOBILE_IFNAME);
// Stopping prefix discovery causes netd to tell us that the NAT64 prefix is gone. // Stopping prefix discovery causes netd to tell us that the NAT64 prefix is gone.
mService.mResolverUnsolEventCallback.onNat64PrefixEvent(makeNat64PrefixEvent( mService.mResolverUnsolEventCallback.onNat64PrefixEvent(makeNat64PrefixEvent(
@@ -9399,8 +9396,8 @@ public class ConnectivityServiceTest {
// Test disconnecting a network that is running 464xlat. // Test disconnecting a network that is running 464xlat.
// Connect a network with a NAT64 prefix. // Connect a network with a NAT64 prefix.
when(mMockNetd.interfaceGetCfg(CLAT_MOBILE_IFNAME)) doReturn(getClatInterfaceConfigParcel(myIpv4)).when(mMockNetd)
.thenReturn(getClatInterfaceConfigParcel(myIpv4)); .interfaceGetCfg(CLAT_MOBILE_IFNAME);
cellLp.setNat64Prefix(kNat64Prefix); cellLp.setNat64Prefix(kNat64Prefix);
mCellNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_CELLULAR, cellLp); mCellNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_CELLULAR, cellLp);
mCellNetworkAgent.connect(false /* validated */); mCellNetworkAgent.connect(false /* validated */);
@@ -9769,7 +9766,7 @@ public class ConnectivityServiceTest {
final ProxyInfo testProxyInfo = ProxyInfo.buildDirectProxy("test", 8888); final ProxyInfo testProxyInfo = ProxyInfo.buildDirectProxy("test", 8888);
mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI); mWiFiNetworkAgent = new TestNetworkAgentWrapper(TRANSPORT_WIFI);
final Network wifiNetwork = mWiFiNetworkAgent.getNetwork(); final Network wifiNetwork = mWiFiNetworkAgent.getNetwork();
when(mService.mProxyTracker.getGlobalProxy()).thenReturn(testProxyInfo); doReturn(testProxyInfo).when(mService.mProxyTracker).getGlobalProxy();
assertEquals(testProxyInfo, mService.getProxyForNetwork(wifiNetwork)); assertEquals(testProxyInfo, mService.getProxyForNetwork(wifiNetwork));
} }
@@ -10045,16 +10042,16 @@ public class ConnectivityServiceTest {
final ApplicationInfo applicationInfo = new ApplicationInfo(); final ApplicationInfo applicationInfo = new ApplicationInfo();
applicationInfo.targetSdkVersion = targetSdk; applicationInfo.targetSdkVersion = targetSdk;
when(mPackageManager.getApplicationInfoAsUser(anyString(), anyInt(), any())) doReturn(applicationInfo).when(mPackageManager)
.thenReturn(applicationInfo); .getApplicationInfoAsUser(anyString(), anyInt(), any());
when(mPackageManager.getTargetSdkVersion(any())).thenReturn(targetSdk); doReturn(targetSdk).when(mPackageManager).getTargetSdkVersion(any());
when(mLocationManager.isLocationEnabledForUser(any())).thenReturn(locationToggle); doReturn(locationToggle).when(mLocationManager).isLocationEnabledForUser(any());
if (op != null) { if (op != null) {
when(mAppOpsManager.noteOp(eq(op), eq(Process.myUid()), doReturn(AppOpsManager.MODE_ALLOWED).when(mAppOpsManager).noteOp(
eq(mContext.getPackageName()), eq(getAttributionTag()), anyString())) eq(op), eq(Process.myUid()), eq(mContext.getPackageName()),
.thenReturn(AppOpsManager.MODE_ALLOWED); eq(getAttributionTag()), anyString());
} }
if (perm != null) { if (perm != null) {
@@ -10076,7 +10073,7 @@ public class ConnectivityServiceTest {
int callerUid, boolean includeLocationSensitiveInfo, int callerUid, boolean includeLocationSensitiveInfo,
boolean shouldMakeCopyWithLocationSensitiveFieldsParcelable) { boolean shouldMakeCopyWithLocationSensitiveFieldsParcelable) {
final TransportInfo transportInfo = mock(TransportInfo.class); final TransportInfo transportInfo = mock(TransportInfo.class);
when(transportInfo.getApplicableRedactions()).thenReturn(REDACT_FOR_ACCESS_FINE_LOCATION); doReturn(REDACT_FOR_ACCESS_FINE_LOCATION).when(transportInfo).getApplicableRedactions();
final NetworkCapabilities netCap = final NetworkCapabilities netCap =
new NetworkCapabilities().setTransportInfo(transportInfo); new NetworkCapabilities().setTransportInfo(transportInfo);
@@ -10233,8 +10230,8 @@ public class ConnectivityServiceTest {
mServiceContext.setPermission(Manifest.permission.LOCAL_MAC_ADDRESS, PERMISSION_GRANTED); mServiceContext.setPermission(Manifest.permission.LOCAL_MAC_ADDRESS, PERMISSION_GRANTED);
final TransportInfo transportInfo = mock(TransportInfo.class); final TransportInfo transportInfo = mock(TransportInfo.class);
when(transportInfo.getApplicableRedactions()) doReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_LOCAL_MAC_ADDRESS)
.thenReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_LOCAL_MAC_ADDRESS); .when(transportInfo).getApplicableRedactions();
final NetworkCapabilities netCap = final NetworkCapabilities netCap =
new NetworkCapabilities().setTransportInfo(transportInfo); new NetworkCapabilities().setTransportInfo(transportInfo);
@@ -10252,8 +10249,8 @@ public class ConnectivityServiceTest {
mServiceContext.setPermission(Manifest.permission.LOCAL_MAC_ADDRESS, PERMISSION_DENIED); mServiceContext.setPermission(Manifest.permission.LOCAL_MAC_ADDRESS, PERMISSION_DENIED);
final TransportInfo transportInfo = mock(TransportInfo.class); final TransportInfo transportInfo = mock(TransportInfo.class);
when(transportInfo.getApplicableRedactions()) doReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_LOCAL_MAC_ADDRESS)
.thenReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_LOCAL_MAC_ADDRESS); .when(transportInfo).getApplicableRedactions();
final NetworkCapabilities netCap = final NetworkCapabilities netCap =
new NetworkCapabilities().setTransportInfo(transportInfo); new NetworkCapabilities().setTransportInfo(transportInfo);
@@ -10272,8 +10269,8 @@ public class ConnectivityServiceTest {
mServiceContext.setPermission(NETWORK_SETTINGS, PERMISSION_GRANTED); mServiceContext.setPermission(NETWORK_SETTINGS, PERMISSION_GRANTED);
final TransportInfo transportInfo = mock(TransportInfo.class); final TransportInfo transportInfo = mock(TransportInfo.class);
when(transportInfo.getApplicableRedactions()) doReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_NETWORK_SETTINGS)
.thenReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_NETWORK_SETTINGS); .when(transportInfo).getApplicableRedactions();
final NetworkCapabilities netCap = final NetworkCapabilities netCap =
new NetworkCapabilities().setTransportInfo(transportInfo); new NetworkCapabilities().setTransportInfo(transportInfo);
@@ -10291,8 +10288,8 @@ public class ConnectivityServiceTest {
mServiceContext.setPermission(Manifest.permission.LOCAL_MAC_ADDRESS, PERMISSION_DENIED); mServiceContext.setPermission(Manifest.permission.LOCAL_MAC_ADDRESS, PERMISSION_DENIED);
final TransportInfo transportInfo = mock(TransportInfo.class); final TransportInfo transportInfo = mock(TransportInfo.class);
when(transportInfo.getApplicableRedactions()) doReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_NETWORK_SETTINGS)
.thenReturn(REDACT_FOR_ACCESS_FINE_LOCATION | REDACT_FOR_NETWORK_SETTINGS); .when(transportInfo).getApplicableRedactions();
final NetworkCapabilities netCap = final NetworkCapabilities netCap =
new NetworkCapabilities().setTransportInfo(transportInfo); new NetworkCapabilities().setTransportInfo(transportInfo);
@@ -10379,7 +10376,7 @@ public class ConnectivityServiceTest {
@NonNull TestNetworkCallback wifiNetworkCallback, int actualOwnerUid, @NonNull TestNetworkCallback wifiNetworkCallback, int actualOwnerUid,
@NonNull TransportInfo actualTransportInfo, int expectedOwnerUid, @NonNull TransportInfo actualTransportInfo, int expectedOwnerUid,
@NonNull TransportInfo expectedTransportInfo) throws Exception { @NonNull TransportInfo expectedTransportInfo) throws Exception {
when(mPackageManager.getTargetSdkVersion(anyString())).thenReturn(Build.VERSION_CODES.S); doReturn(Build.VERSION_CODES.S).when(mPackageManager).getTargetSdkVersion(anyString());
final NetworkCapabilities ncTemplate = final NetworkCapabilities ncTemplate =
new NetworkCapabilities() new NetworkCapabilities()
.addTransportType(TRANSPORT_WIFI) .addTransportType(TRANSPORT_WIFI)
@@ -10609,7 +10606,7 @@ public class ConnectivityServiceTest {
public void testRegisterUnregisterConnectivityDiagnosticsCallback() throws Exception { public void testRegisterUnregisterConnectivityDiagnosticsCallback() throws Exception {
final NetworkRequest wifiRequest = final NetworkRequest wifiRequest =
new NetworkRequest.Builder().addTransportType(TRANSPORT_WIFI).build(); new NetworkRequest.Builder().addTransportType(TRANSPORT_WIFI).build();
when(mConnectivityDiagnosticsCallback.asBinder()).thenReturn(mIBinder); doReturn(mIBinder).when(mConnectivityDiagnosticsCallback).asBinder();
mService.registerConnectivityDiagnosticsCallback( mService.registerConnectivityDiagnosticsCallback(
mConnectivityDiagnosticsCallback, wifiRequest, mContext.getPackageName()); mConnectivityDiagnosticsCallback, wifiRequest, mContext.getPackageName());
@@ -10632,7 +10629,7 @@ public class ConnectivityServiceTest {
public void testRegisterDuplicateConnectivityDiagnosticsCallback() throws Exception { public void testRegisterDuplicateConnectivityDiagnosticsCallback() throws Exception {
final NetworkRequest wifiRequest = final NetworkRequest wifiRequest =
new NetworkRequest.Builder().addTransportType(TRANSPORT_WIFI).build(); new NetworkRequest.Builder().addTransportType(TRANSPORT_WIFI).build();
when(mConnectivityDiagnosticsCallback.asBinder()).thenReturn(mIBinder); doReturn(mIBinder).when(mConnectivityDiagnosticsCallback).asBinder();
mService.registerConnectivityDiagnosticsCallback( mService.registerConnectivityDiagnosticsCallback(
mConnectivityDiagnosticsCallback, wifiRequest, mContext.getPackageName()); mConnectivityDiagnosticsCallback, wifiRequest, mContext.getPackageName());
@@ -10847,7 +10844,7 @@ public class ConnectivityServiceTest {
callback.assertNoCallback(); callback.assertNoCallback();
final NetworkRequest request = new NetworkRequest.Builder().build(); final NetworkRequest request = new NetworkRequest.Builder().build();
when(mConnectivityDiagnosticsCallback.asBinder()).thenReturn(mIBinder); doReturn(mIBinder).when(mConnectivityDiagnosticsCallback).asBinder();
mServiceContext.setPermission(NETWORK_STACK, PERMISSION_GRANTED); mServiceContext.setPermission(NETWORK_STACK, PERMISSION_GRANTED);
@@ -10863,7 +10860,7 @@ public class ConnectivityServiceTest {
private void setUpConnectivityDiagnosticsCallback() throws Exception { private void setUpConnectivityDiagnosticsCallback() throws Exception {
final NetworkRequest request = new NetworkRequest.Builder().build(); final NetworkRequest request = new NetworkRequest.Builder().build();
when(mConnectivityDiagnosticsCallback.asBinder()).thenReturn(mIBinder); doReturn(mIBinder).when(mConnectivityDiagnosticsCallback).asBinder();
mServiceContext.setPermission(NETWORK_STACK, PERMISSION_GRANTED); mServiceContext.setPermission(NETWORK_STACK, PERMISSION_GRANTED);
@@ -11372,8 +11369,8 @@ public class ConnectivityServiceTest {
final Pair<IQosCallback, IBinder> pair = createQosCallback(); final Pair<IQosCallback, IBinder> pair = createQosCallback();
mCallback = pair.first; mCallback = pair.first;
when(mFilter.getNetwork()).thenReturn(network); doReturn(network).when(mFilter).getNetwork();
when(mFilter.validate()).thenReturn(QosCallbackException.EX_TYPE_FILTER_NONE); doReturn(QosCallbackException.EX_TYPE_FILTER_NONE).when(mFilter).validate();
mAgentWrapper = mCellNetworkAgent; mAgentWrapper = mCellNetworkAgent;
} }
@@ -11395,8 +11392,8 @@ public class ConnectivityServiceTest {
private Pair<IQosCallback, IBinder> createQosCallback() { private Pair<IQosCallback, IBinder> createQosCallback() {
final IQosCallback callback = mock(IQosCallback.class); final IQosCallback callback = mock(IQosCallback.class);
final IBinder binder = mock(Binder.class); final IBinder binder = mock(Binder.class);
when(callback.asBinder()).thenReturn(binder); doReturn(binder).when(callback).asBinder();
when(binder.isBinderAlive()).thenReturn(true); doReturn(true).when(binder).isBinderAlive();
return new Pair<>(callback, binder); return new Pair<>(callback, binder);
} }
@@ -11406,8 +11403,8 @@ public class ConnectivityServiceTest {
mQosCallbackMockHelper = new QosCallbackMockHelper(); mQosCallbackMockHelper = new QosCallbackMockHelper();
final NetworkAgentWrapper wrapper = mQosCallbackMockHelper.mAgentWrapper; final NetworkAgentWrapper wrapper = mQosCallbackMockHelper.mAgentWrapper;
when(mQosCallbackMockHelper.mFilter.validate()) doReturn(QosCallbackException.EX_TYPE_FILTER_NONE)
.thenReturn(QosCallbackException.EX_TYPE_FILTER_NONE); .when(mQosCallbackMockHelper.mFilter).validate();
mQosCallbackMockHelper.registerQosCallback( mQosCallbackMockHelper.registerQosCallback(
mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback); mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback);
@@ -11430,8 +11427,8 @@ public class ConnectivityServiceTest {
public void testQosCallbackNoRegistrationOnValidationError() throws Exception { public void testQosCallbackNoRegistrationOnValidationError() throws Exception {
mQosCallbackMockHelper = new QosCallbackMockHelper(); mQosCallbackMockHelper = new QosCallbackMockHelper();
when(mQosCallbackMockHelper.mFilter.validate()) doReturn(QosCallbackException.EX_TYPE_FILTER_NETWORK_RELEASED)
.thenReturn(QosCallbackException.EX_TYPE_FILTER_NETWORK_RELEASED); .when(mQosCallbackMockHelper.mFilter).validate();
mQosCallbackMockHelper.registerQosCallback( mQosCallbackMockHelper.registerQosCallback(
mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback); mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback);
waitForIdle(); waitForIdle();
@@ -11445,8 +11442,8 @@ public class ConnectivityServiceTest {
final int sessionId = 10; final int sessionId = 10;
final int qosCallbackId = 1; final int qosCallbackId = 1;
when(mQosCallbackMockHelper.mFilter.validate()) doReturn(QosCallbackException.EX_TYPE_FILTER_NONE)
.thenReturn(QosCallbackException.EX_TYPE_FILTER_NONE); .when(mQosCallbackMockHelper.mFilter).validate();
mQosCallbackMockHelper.registerQosCallback( mQosCallbackMockHelper.registerQosCallback(
mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback); mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback);
waitForIdle(); waitForIdle();
@@ -11475,8 +11472,8 @@ public class ConnectivityServiceTest {
final int sessionId = 10; final int sessionId = 10;
final int qosCallbackId = 1; final int qosCallbackId = 1;
when(mQosCallbackMockHelper.mFilter.validate()) doReturn(QosCallbackException.EX_TYPE_FILTER_NONE)
.thenReturn(QosCallbackException.EX_TYPE_FILTER_NONE); .when(mQosCallbackMockHelper.mFilter).validate();
mQosCallbackMockHelper.registerQosCallback( mQosCallbackMockHelper.registerQosCallback(
mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback); mQosCallbackMockHelper.mFilter, mQosCallbackMockHelper.mCallback);
waitForIdle(); waitForIdle();
@@ -11503,8 +11500,8 @@ public class ConnectivityServiceTest {
public void testQosCallbackTooManyRequests() throws Exception { public void testQosCallbackTooManyRequests() throws Exception {
mQosCallbackMockHelper = new QosCallbackMockHelper(); mQosCallbackMockHelper = new QosCallbackMockHelper();
when(mQosCallbackMockHelper.mFilter.validate()) doReturn(QosCallbackException.EX_TYPE_FILTER_NONE)
.thenReturn(QosCallbackException.EX_TYPE_FILTER_NONE); .when(mQosCallbackMockHelper.mFilter).validate();
for (int i = 0; i < 100; i++) { for (int i = 0; i < 100; i++) {
final Pair<IQosCallback, IBinder> pair = createQosCallback(); final Pair<IQosCallback, IBinder> pair = createQosCallback();
@@ -11535,8 +11532,8 @@ public class ConnectivityServiceTest {
final ApplicationInfo applicationInfo = new ApplicationInfo(); final ApplicationInfo applicationInfo = new ApplicationInfo();
applicationInfo.uid = uid; applicationInfo.uid = uid;
try { try {
when(mPackageManager.getApplicationInfoAsUser(eq(packageName), anyInt(), eq(user))) doReturn(applicationInfo).when(mPackageManager).getApplicationInfoAsUser(
.thenReturn(applicationInfo); eq(packageName), anyInt(), eq(user));
} catch (Exception e) { } catch (Exception e) {
fail(e.getMessage()); fail(e.getMessage());
} }
@@ -11545,13 +11542,12 @@ public class ConnectivityServiceTest {
private void mockGetApplicationInfoThrowsNameNotFound(@NonNull final String packageName, private void mockGetApplicationInfoThrowsNameNotFound(@NonNull final String packageName,
@NonNull final UserHandle user) @NonNull final UserHandle user)
throws Exception { throws Exception {
when(mPackageManager.getApplicationInfoAsUser(eq(packageName), anyInt(), eq(user))) doThrow(new PackageManager.NameNotFoundException(packageName)).when(
.thenThrow(new PackageManager.NameNotFoundException(packageName)); mPackageManager).getApplicationInfoAsUser(eq(packageName), anyInt(), eq(user));
} }
private void mockHasSystemFeature(@NonNull final String featureName, final boolean hasFeature) { private void mockHasSystemFeature(@NonNull final String featureName, final boolean hasFeature) {
when(mPackageManager.hasSystemFeature(eq(featureName))) doReturn(hasFeature).when(mPackageManager).hasSystemFeature(eq(featureName));
.thenReturn(hasFeature);
} }
private Range<Integer> getNriFirstUidRange(@NonNull final NetworkRequestInfo nri) { private Range<Integer> getNriFirstUidRange(@NonNull final NetworkRequestInfo nri) {
@@ -11751,8 +11747,8 @@ public class ConnectivityServiceTest {
// Arrange users // Arrange users
final int secondUserTestPackageUid = UserHandle.getUid(SECONDARY_USER, TEST_PACKAGE_UID); final int secondUserTestPackageUid = UserHandle.getUid(SECONDARY_USER, TEST_PACKAGE_UID);
final int thirdUserTestPackageUid = UserHandle.getUid(TERTIARY_USER, TEST_PACKAGE_UID); final int thirdUserTestPackageUid = UserHandle.getUid(TERTIARY_USER, TEST_PACKAGE_UID);
when(mUserManager.getUserHandles(anyBoolean())).thenReturn( doReturn(asList(PRIMARY_USER_HANDLE, SECONDARY_USER_HANDLE, TERTIARY_USER_HANDLE))
asList(PRIMARY_USER_HANDLE, SECONDARY_USER_HANDLE, TERTIARY_USER_HANDLE)); .when(mUserManager).getUserHandles(anyBoolean());
// Arrange PackageManager mocks testing for users who have and don't have a package. // Arrange PackageManager mocks testing for users who have and don't have a package.
mockGetApplicationInfoThrowsNameNotFound(TEST_PACKAGE_NAME, PRIMARY_USER_HANDLE); mockGetApplicationInfoThrowsNameNotFound(TEST_PACKAGE_NAME, PRIMARY_USER_HANDLE);
@@ -12698,8 +12694,8 @@ public class ConnectivityServiceTest {
// Arrange users // Arrange users
final int secondUser = 10; final int secondUser = 10;
final UserHandle secondUserHandle = new UserHandle(secondUser); final UserHandle secondUserHandle = new UserHandle(secondUser);
when(mUserManager.getUserHandles(anyBoolean())).thenReturn( doReturn(asList(PRIMARY_USER_HANDLE, secondUserHandle)).when(mUserManager)
asList(PRIMARY_USER_HANDLE, secondUserHandle)); .getUserHandles(anyBoolean());
// Arrange PackageManager mocks // Arrange PackageManager mocks
final int secondUserTestPackageUid = UserHandle.getUid(secondUser, TEST_PACKAGE_UID); final int secondUserTestPackageUid = UserHandle.getUid(secondUser, TEST_PACKAGE_UID);
@@ -12739,8 +12735,7 @@ public class ConnectivityServiceTest {
// Arrange users // Arrange users
final int secondUser = 10; final int secondUser = 10;
final UserHandle secondUserHandle = new UserHandle(secondUser); final UserHandle secondUserHandle = new UserHandle(secondUser);
when(mUserManager.getUserHandles(anyBoolean())).thenReturn( doReturn(asList(PRIMARY_USER_HANDLE)).when(mUserManager).getUserHandles(anyBoolean());
asList(PRIMARY_USER_HANDLE));
// Arrange PackageManager mocks // Arrange PackageManager mocks
final int secondUserTestPackageUid = UserHandle.getUid(secondUser, TEST_PACKAGE_UID); final int secondUserTestPackageUid = UserHandle.getUid(secondUser, TEST_PACKAGE_UID);
@@ -12767,8 +12762,8 @@ public class ConnectivityServiceTest {
false /* shouldDestroyNetwork */); false /* shouldDestroyNetwork */);
// Send a broadcast indicating a user was added. // Send a broadcast indicating a user was added.
when(mUserManager.getUserHandles(anyBoolean())).thenReturn( doReturn(asList(PRIMARY_USER_HANDLE, secondUserHandle)).when(mUserManager)
asList(PRIMARY_USER_HANDLE, secondUserHandle)); .getUserHandles(anyBoolean());
final Intent addedIntent = new Intent(ACTION_USER_ADDED); final Intent addedIntent = new Intent(ACTION_USER_ADDED);
addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(secondUser)); addedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(secondUser));
processBroadcast(addedIntent); processBroadcast(addedIntent);
@@ -12780,8 +12775,7 @@ public class ConnectivityServiceTest {
false /* shouldDestroyNetwork */); false /* shouldDestroyNetwork */);
// Send a broadcast indicating a user was removed. // Send a broadcast indicating a user was removed.
when(mUserManager.getUserHandles(anyBoolean())).thenReturn( doReturn(asList(PRIMARY_USER_HANDLE)).when(mUserManager).getUserHandles(anyBoolean());
asList(PRIMARY_USER_HANDLE));
final Intent removedIntent = new Intent(ACTION_USER_REMOVED); final Intent removedIntent = new Intent(ACTION_USER_REMOVED);
removedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(secondUser)); removedIntent.putExtra(Intent.EXTRA_USER, UserHandle.of(secondUser));
processBroadcast(removedIntent); processBroadcast(removedIntent);
@@ -14373,7 +14367,7 @@ public class ConnectivityServiceTest {
// callback. // callback.
final int[] uids2 = new int[] { TEST_WORK_PROFILE_APP_UID }; final int[] uids2 = new int[] { TEST_WORK_PROFILE_APP_UID };
final UidRangeParcel[] uidRanges2 = toUidRangeStableParcels(uidRangesForUids(uids2)); final UidRangeParcel[] uidRanges2 = toUidRangeStableParcels(uidRangesForUids(uids2));
when(mUserManager.getUserHandles(anyBoolean())).thenReturn(Arrays.asList(testHandle)); doReturn(Arrays.asList(testHandle)).when(mUserManager).getUserHandles(anyBoolean());
setupSetOemNetworkPreferenceForPreferenceTest( setupSetOemNetworkPreferenceForPreferenceTest(
networkPref, uidRanges2, "com.android.test", testHandle); networkPref, uidRanges2, "com.android.test", testHandle);
mDefaultNetworkCallback.assertNoCallback(); mDefaultNetworkCallback.assertNoCallback();