Update tests due to new platform API intruducing ambibuity

Tests: atest MockLocationAppPreferenceControllerTest
       atest RestrictAppPreferenceControllerTest

bug:111061782

Change-Id: I287d40d5b1e5a6fff6a85cb5ba6a8b87096da9d4
This commit is contained in:
Svet Ganov
2019-01-10 12:33:13 -08:00
parent 3137429192
commit 27b0668c91
3 changed files with 17 additions and 15 deletions

View File

@@ -74,7 +74,7 @@ public class MockLocationAppPreferenceControllerTest {
final AppOpsManager.PackageOps packageOps =
new AppOpsManager.PackageOps(appName, 0,
Collections.singletonList(createOpEntry(AppOpsManager.MODE_ALLOWED)));
when(mAppOpsManager.getPackagesForOps(any())).thenReturn(
when(mAppOpsManager.getPackagesForOps(any(int[].class))).thenReturn(
Collections.singletonList(packageOps));
mController.updateState(mPreference);
@@ -84,7 +84,8 @@ public class MockLocationAppPreferenceControllerTest {
@Test
public void updateState_noAppSelected_shouldSetSummaryToDefault() {
when(mAppOpsManager.getPackagesForOps(any())).thenReturn(Collections.emptyList());
when(mAppOpsManager.getPackagesForOps(any(int[].class)))
.thenReturn(Collections.emptyList());
mController.updateState(mPreference);
@@ -101,7 +102,7 @@ public class MockLocationAppPreferenceControllerTest {
final AppOpsManager.PackageOps packageOps = new AppOpsManager.PackageOps(prevAppName, 0,
Collections.singletonList(createOpEntry(AppOpsManager.MODE_ALLOWED)));
when(mAppOpsManager.getPackagesForOps(any()))
when(mAppOpsManager.getPackagesForOps(any(int[].class)))
.thenReturn(Collections.singletonList(packageOps));
when(mPackageManager.getApplicationInfo(anyString(),
eq(PackageManager.MATCH_DISABLED_COMPONENTS))).thenReturn(mApplicationInfo);

View File

@@ -111,7 +111,7 @@ public class RestrictAppPreferenceControllerTest {
@Test
public void testUpdateState_oneApp_showCorrectSummary() {
mPackageOpsList.add(mRestrictedPackageOps);
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any());
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any(int[].class));
mRestrictAppPreferenceController.updateState(mPreference);
@@ -124,7 +124,7 @@ public class RestrictAppPreferenceControllerTest {
mPackageOpsList.add(mRestrictedPackageOps);
mPackageOpsList.add(mAllowedPackageOps);
mPackageOpsList.add(mOtherUserPackageOps);
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any());
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any(int[].class));
mRestrictAppPreferenceController.updateState(mPreference);
@@ -137,7 +137,7 @@ public class RestrictAppPreferenceControllerTest {
// Two packageOps share same package name but different uid.
mPackageOpsList.add(mRestrictedPackageOps);
mPackageOpsList.add(mOtherUserPackageOps);
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any());
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any(int[].class));
mRestrictAppPreferenceController.updateState(mPreference);
@@ -152,7 +152,7 @@ public class RestrictAppPreferenceControllerTest {
@Test
public void testUpdateState_zeroRestrictApp_inVisible() {
mPackageOpsList.add(mAllowedPackageOps);
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any());
doReturn(mPackageOpsList).when(mAppOpsManager).getPackagesForOps(any(int[].class));
mRestrictAppPreferenceController.updateState(mPreference);

View File

@@ -57,23 +57,24 @@ public class AppSettingsTest extends AndroidTestCase {
};
// List with one package op
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName), any()))
.thenReturn(Arrays.asList(new AppOpsManager.PackageOps[] {blankOps[0]}));
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName),
any(int[].class))).thenReturn(Arrays.asList(
new AppOpsManager.PackageOps[] {blankOps[0]}));
assertTrue(appHasVpnPermission(mContext, mockApp));
// List with more than one package op
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName), any()))
.thenReturn(Arrays.asList(blankOps));
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName),
any(int[].class))).thenReturn(Arrays.asList(blankOps));
assertTrue(appHasVpnPermission(mContext, mockApp));
// Empty list
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName), any()))
.thenReturn(Collections.emptyList());
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName),
any(int[].class))).thenReturn(Collections.emptyList());
assertFalse(appHasVpnPermission(mContext, mockApp));
// Null list (may be returned in place of an empty list)
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName), any()))
.thenReturn(null);
when(mAppOps.getOpsForPackage(eq(mockApp.uid), eq(mockApp.packageName),
any(int[].class))).thenReturn(null);
assertFalse(appHasVpnPermission(mContext, mockApp));
}