diff options
author | Cody Kesting <ckesting@google.com> | 2021-04-07 15:11:49 -0700 |
---|---|---|
committer | Cody Kesting <ckesting@google.com> | 2021-04-07 15:27:45 -0700 |
commit | 5b6355a09fa375348750b24b47a059a44ac2bf1b (patch) | |
tree | c248baaf43c77062c973bbaab6c6340fb2f15451 /tests/vcn/java/com/android/server/VcnManagementServiceTest.java | |
parent | dea9900796d5dece1d72e3742462ac9241f03d68 (diff) |
Remove location-permission check from VcnStatusCallbacks.
This CL updates VcnManagementService to not require location permissions
for receiving VcnStatusCallback invocations. This change is safe to make
because these callbacks are not capable of leaking any location-related
information.
Bug: 180556279
Test: atest FrameworksVcnTests CtsVcnTestCases
Change-Id: I38600aeb2489f139b3479b07de77facc2ae838c5
Diffstat (limited to 'tests/vcn/java/com/android/server/VcnManagementServiceTest.java')
-rw-r--r-- | tests/vcn/java/com/android/server/VcnManagementServiceTest.java | 50 |
1 files changed, 3 insertions, 47 deletions
diff --git a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java index 43e6676e1d4c..bbc9bb600f6d 100644 --- a/tests/vcn/java/com/android/server/VcnManagementServiceTest.java +++ b/tests/vcn/java/com/android/server/VcnManagementServiceTest.java @@ -81,7 +81,6 @@ import android.telephony.TelephonyManager; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; -import com.android.net.module.util.LocationPermissionChecker; import com.android.server.VcnManagementService.VcnCallback; import com.android.server.VcnManagementService.VcnStatusCallbackInfo; import com.android.server.vcn.TelephonySubscriptionTracker; @@ -162,8 +161,6 @@ public class VcnManagementServiceTest { mock(PersistableBundleUtils.LockingReadWriteHelper.class); private final TelephonySubscriptionTracker mSubscriptionTracker = mock(TelephonySubscriptionTracker.class); - private final LocationPermissionChecker mLocationPermissionChecker = - mock(LocationPermissionChecker.class); private final ArgumentCaptor<VcnCallback> mVcnCallbackCaptor = ArgumentCaptor.forClass(VcnCallback.class); @@ -207,9 +204,6 @@ public class VcnManagementServiceTest { doReturn(mConfigReadWriteHelper) .when(mMockDeps) .newPersistableBundleLockingReadWriteHelper(any()); - doReturn(mLocationPermissionChecker) - .when(mMockDeps) - .newLocationPermissionChecker(eq(mMockContext)); // Setup VCN instance generation doAnswer((invocation) -> { @@ -521,10 +515,6 @@ public class VcnManagementServiceTest { @Test public void testSetVcnConfigNotifiesStatusCallback() throws Exception { - mVcnMgmtSvc.systemReady(); - doReturn(true) - .when(mLocationPermissionChecker) - .checkLocationPermission(eq(TEST_PACKAGE_NAME), any(), eq(TEST_UID), any()); triggerSubscriptionTrackerCbAndGetSnapshot(Collections.singleton(TEST_UUID_2)); mVcnMgmtSvc.registerVcnStatusCallback(TEST_UUID_2, mMockStatusCallback, TEST_PACKAGE_NAME); @@ -697,10 +687,6 @@ public class VcnManagementServiceTest { doReturn(isVcnActive ? VCN_STATUS_CODE_ACTIVE : VCN_STATUS_CODE_SAFE_MODE) .when(vcn) .getStatus(); - - doReturn(true) - .when(mLocationPermissionChecker) - .checkLocationPermission(eq(TEST_PACKAGE_NAME), any(), eq(TEST_UID), any()); } private NetworkCapabilities.Builder getNetworkCapabilitiesBuilderForTransport( @@ -933,8 +919,7 @@ public class VcnManagementServiceTest { @NonNull ParcelUuid subGroup, @NonNull String pkgName, int uid, - boolean hasPermissionsforSubGroup, - boolean hasLocationPermission) + boolean hasPermissionsforSubGroup) throws Exception { TelephonySubscriptionSnapshot snapshot = triggerSubscriptionTrackerCbAndGetSnapshot(Collections.singleton(subGroup)); @@ -946,10 +931,6 @@ public class VcnManagementServiceTest { .when(snapshot) .packageHasPermissionsForSubscriptionGroup(eq(subGroup), eq(pkgName)); - doReturn(hasLocationPermission) - .when(mLocationPermissionChecker) - .checkLocationPermission(eq(pkgName), any(), eq(uid), any()); - mVcnMgmtSvc.registerVcnStatusCallback(subGroup, mMockStatusCallback, pkgName); triggerVcnSafeMode(subGroup, snapshot, true /* enterSafeMode */); @@ -959,11 +940,7 @@ public class VcnManagementServiceTest { public void testVcnStatusCallbackOnSafeModeStatusChangedWithCarrierPrivileges() throws Exception { triggerVcnStatusCallbackOnSafeModeStatusChanged( - TEST_UUID_1, - TEST_PACKAGE_NAME, - TEST_UID, - true /* hasPermissionsforSubGroup */, - true /* hasLocationPermission */); + TEST_UUID_1, TEST_PACKAGE_NAME, TEST_UID, true /* hasPermissionsforSubGroup */); verify(mMockStatusCallback).onVcnStatusChanged(VcnManager.VCN_STATUS_CODE_SAFE_MODE); } @@ -972,25 +949,7 @@ public class VcnManagementServiceTest { public void testVcnStatusCallbackOnSafeModeStatusChangedWithoutCarrierPrivileges() throws Exception { triggerVcnStatusCallbackOnSafeModeStatusChanged( - TEST_UUID_1, - TEST_PACKAGE_NAME, - TEST_UID, - false /* hasPermissionsforSubGroup */, - true /* hasLocationPermission */); - - verify(mMockStatusCallback, never()) - .onVcnStatusChanged(VcnManager.VCN_STATUS_CODE_SAFE_MODE); - } - - @Test - public void testVcnStatusCallbackOnSafeModeStatusChangedWithoutLocationPermission() - throws Exception { - triggerVcnStatusCallbackOnSafeModeStatusChanged( - TEST_UUID_1, - TEST_PACKAGE_NAME, - TEST_UID, - true /* hasPermissionsforSubGroup */, - false /* hasLocationPermission */); + TEST_UUID_1, TEST_PACKAGE_NAME, TEST_UID, false /* hasPermissionsforSubGroup */); verify(mMockStatusCallback, never()) .onVcnStatusChanged(VcnManager.VCN_STATUS_CODE_SAFE_MODE); @@ -1052,9 +1011,6 @@ public class VcnManagementServiceTest { .when(snapshot) .packageHasPermissionsForSubscriptionGroup( eq(TEST_UUID_1), eq(TEST_CB_PACKAGE_NAME)); - doReturn(true) - .when(mLocationPermissionChecker) - .checkLocationPermission(eq(TEST_CB_PACKAGE_NAME), any(), eq(TEST_UID), any()); mVcnMgmtSvc.registerVcnStatusCallback( TEST_UUID_1, mMockStatusCallback, TEST_CB_PACKAGE_NAME); |