Update robolectric tetst for BackupEligibilityRules refactor
Bug: 161241479 Test: atest RunBackupFrameworksServicesRoboTests Change-Id: I7705d441947b1e2143f5da3c298294f5a67377f0
This commit is contained in:
@@ -61,7 +61,7 @@ import com.android.server.backup.testing.BackupManagerServiceTestUtils;
|
||||
import com.android.server.backup.testing.TransportData;
|
||||
import com.android.server.backup.testing.TransportTestUtils.TransportMock;
|
||||
import com.android.server.backup.transport.TransportNotRegisteredException;
|
||||
import com.android.server.testing.shadows.ShadowAppBackupUtils;
|
||||
import com.android.server.testing.shadows.ShadowBackupEligibilityRules;
|
||||
import com.android.server.testing.shadows.ShadowApplicationPackageManager;
|
||||
import com.android.server.testing.shadows.ShadowBinder;
|
||||
import com.android.server.testing.shadows.ShadowKeyValueBackupJob;
|
||||
@@ -99,7 +99,7 @@ import java.util.List;
|
||||
@RunWith(RobolectricTestRunner.class)
|
||||
@Config(
|
||||
shadows = {
|
||||
ShadowAppBackupUtils.class,
|
||||
ShadowBackupEligibilityRules.class,
|
||||
ShadowApplicationPackageManager.class,
|
||||
ShadowSystemServiceRegistry.class
|
||||
})
|
||||
@@ -159,7 +159,7 @@ public class UserBackupManagerServiceTest {
|
||||
@After
|
||||
public void tearDown() throws Exception {
|
||||
mBackupThread.quit();
|
||||
ShadowAppBackupUtils.reset();
|
||||
ShadowBackupEligibilityRules.reset();
|
||||
ShadowApplicationPackageManager.reset();
|
||||
}
|
||||
|
||||
@@ -236,7 +236,7 @@ public class UserBackupManagerServiceTest {
|
||||
mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
|
||||
TransportMock transportMock = setUpCurrentTransport(mTransportManager, backupTransport());
|
||||
registerPackages(PACKAGE_1);
|
||||
ShadowAppBackupUtils.setAppRunningAndEligibleForBackupWithTransport(PACKAGE_1);
|
||||
ShadowBackupEligibilityRules.setAppRunningAndEligibleForBackupWithTransport(PACKAGE_1);
|
||||
UserBackupManagerService backupManagerService = createUserBackupManagerServiceAndRunTasks();
|
||||
|
||||
boolean result = backupManagerService.isAppEligibleForBackup(PACKAGE_1);
|
||||
@@ -255,7 +255,7 @@ public class UserBackupManagerServiceTest {
|
||||
mShadowContext.denyPermissions(android.Manifest.permission.BACKUP);
|
||||
setUpCurrentTransport(mTransportManager, mTransport);
|
||||
registerPackages(PACKAGE_1);
|
||||
ShadowAppBackupUtils.setAppRunningAndEligibleForBackupWithTransport(PACKAGE_1);
|
||||
ShadowBackupEligibilityRules.setAppRunningAndEligibleForBackupWithTransport(PACKAGE_1);
|
||||
UserBackupManagerService backupManagerService = createUserBackupManagerServiceAndRunTasks();
|
||||
|
||||
expectThrows(
|
||||
@@ -273,7 +273,7 @@ public class UserBackupManagerServiceTest {
|
||||
mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
|
||||
TransportMock transportMock = setUpCurrentTransport(mTransportManager, mTransport);
|
||||
registerPackages(PACKAGE_1, PACKAGE_2);
|
||||
ShadowAppBackupUtils.setAppRunningAndEligibleForBackupWithTransport(PACKAGE_1);
|
||||
ShadowBackupEligibilityRules.setAppRunningAndEligibleForBackupWithTransport(PACKAGE_1);
|
||||
UserBackupManagerService backupManagerService = createUserBackupManagerServiceAndRunTasks();
|
||||
|
||||
String[] filtered =
|
||||
@@ -801,7 +801,7 @@ public class UserBackupManagerServiceTest {
|
||||
mShadowContext.grantPermissions(android.Manifest.permission.BACKUP);
|
||||
for (String packageName : packages) {
|
||||
registerPackages(packageName);
|
||||
ShadowAppBackupUtils.setAppRunningAndEligibleForBackupWithTransport(packageName);
|
||||
ShadowBackupEligibilityRules.setAppRunningAndEligibleForBackupWithTransport(packageName);
|
||||
}
|
||||
setUpCurrentTransport(mTransportManager, mTransport);
|
||||
}
|
||||
@@ -962,7 +962,7 @@ public class UserBackupManagerServiceTest {
|
||||
@Config(shadows = ShadowKeyValueBackupTask.class)
|
||||
public void testRequestBackup_whenPackageIsFullBackup() throws Exception {
|
||||
setUpForRequestBackup(PACKAGE_1);
|
||||
ShadowAppBackupUtils.setAppGetsFullBackup(PACKAGE_1);
|
||||
ShadowBackupEligibilityRules.setAppGetsFullBackup(PACKAGE_1);
|
||||
UserBackupManagerService backupManagerService =
|
||||
createBackupManagerServiceForRequestBackup();
|
||||
|
||||
|
||||
@@ -115,6 +115,7 @@ import com.android.server.backup.testing.TestUtils.ThrowingRunnable;
|
||||
import com.android.server.backup.testing.TransportData;
|
||||
import com.android.server.backup.testing.TransportTestUtils;
|
||||
import com.android.server.backup.testing.TransportTestUtils.TransportMock;
|
||||
import com.android.server.backup.utils.BackupEligibilityRules;
|
||||
import com.android.server.testing.shadows.FrameworkShadowLooper;
|
||||
import com.android.server.testing.shadows.ShadowApplicationPackageManager;
|
||||
import com.android.server.testing.shadows.ShadowBackupDataInput;
|
||||
@@ -176,6 +177,7 @@ public class KeyValueBackupTaskTest {
|
||||
private static final String BACKUP_AGENT_SHARED_PREFS_SYNCHRONIZER_CLASS =
|
||||
"android.app.backup.BackupAgent$SharedPrefsSynchronizer";
|
||||
private static final int USER_ID = 10;
|
||||
private static final int OPERATION_TYPE = BackupManager.OperationType.BACKUP;
|
||||
|
||||
@Mock private TransportManager mTransportManager;
|
||||
@Mock private DataChangedJournal mOldJournal;
|
||||
@@ -183,6 +185,7 @@ public class KeyValueBackupTaskTest {
|
||||
@Mock private IBackupManagerMonitor mMonitor;
|
||||
@Mock private OnTaskFinishedListener mListener;
|
||||
@Mock private PackageManagerInternal mPackageManagerInternal;
|
||||
|
||||
private UserBackupManagerService mBackupManagerService;
|
||||
private TransportData mTransport;
|
||||
private ShadowLooper mShadowBackupLooper;
|
||||
@@ -198,6 +201,7 @@ public class KeyValueBackupTaskTest {
|
||||
private Looper mMainLooper;
|
||||
private FrameworkShadowLooper mShadowMainLooper;
|
||||
private Context mContext;
|
||||
private BackupEligibilityRules mBackupEligibilityRules;
|
||||
|
||||
@Before
|
||||
public void setUp() throws Exception {
|
||||
@@ -253,6 +257,8 @@ public class KeyValueBackupTaskTest {
|
||||
.thenReturn(PackageManager.COMPONENT_ENABLED_STATE_ENABLED);
|
||||
LocalServices.removeServiceForTest(PackageManagerInternal.class);
|
||||
LocalServices.addService(PackageManagerInternal.class, mPackageManagerInternal);
|
||||
mBackupEligibilityRules = new BackupEligibilityRules(mPackageManager,
|
||||
LocalServices.getService(PackageManagerInternal.class), USER_ID, OPERATION_TYPE);
|
||||
}
|
||||
|
||||
@After
|
||||
@@ -479,7 +485,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgentWithData(PACKAGE_1);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, true, PACKAGE_1);
|
||||
|
||||
runTask(task);
|
||||
@@ -492,7 +499,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgentWithData(PACKAGE_1);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task =
|
||||
createKeyValueBackupTask(transportMock, true, PACKAGE_1, PM_PACKAGE);
|
||||
|
||||
@@ -506,7 +514,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgentWithData(PACKAGE_1);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, false, PACKAGE_1);
|
||||
|
||||
runTask(task);
|
||||
@@ -742,7 +751,7 @@ public class KeyValueBackupTaskTest {
|
||||
|
||||
verify(mBackupManagerService).setWorkSource(null);
|
||||
verify(mObserver).onResult(PACKAGE_1.packageName, ERROR_AGENT_FAILURE);
|
||||
verify(mObserver).backupFinished(BackupManager.SUCCESS);
|
||||
verify(mObserver).backupFinished(SUCCESS);
|
||||
assertBackupPendingFor(PACKAGE_1);
|
||||
}
|
||||
|
||||
@@ -775,7 +784,7 @@ public class KeyValueBackupTaskTest {
|
||||
|
||||
verify(mBackupManagerService).setWorkSource(null);
|
||||
verify(mObserver).onResult(PACKAGE_1.packageName, ERROR_AGENT_FAILURE);
|
||||
verify(mObserver).backupFinished(BackupManager.SUCCESS);
|
||||
verify(mObserver).backupFinished(SUCCESS);
|
||||
assertBackupPendingFor(PACKAGE_1);
|
||||
}
|
||||
|
||||
@@ -792,7 +801,7 @@ public class KeyValueBackupTaskTest {
|
||||
|
||||
verify(mBackupManagerService).setWorkSource(null);
|
||||
verify(mObserver).onResult(PACKAGE_1.packageName, ERROR_AGENT_FAILURE);
|
||||
verify(mObserver).backupFinished(BackupManager.SUCCESS);
|
||||
verify(mObserver).backupFinished(SUCCESS);
|
||||
assertBackupPendingFor(PACKAGE_1);
|
||||
}
|
||||
|
||||
@@ -810,7 +819,7 @@ public class KeyValueBackupTaskTest {
|
||||
|
||||
verify(mBackupManagerService).setWorkSource(null);
|
||||
verify(mObserver).onResult(PACKAGE_1.packageName, ERROR_AGENT_FAILURE);
|
||||
verify(mObserver).backupFinished(BackupManager.SUCCESS);
|
||||
verify(mObserver).backupFinished(SUCCESS);
|
||||
assertBackupPendingFor(PACKAGE_1);
|
||||
}
|
||||
|
||||
@@ -1316,7 +1325,8 @@ public class KeyValueBackupTaskTest {
|
||||
argThat(packageInfo(PM_PACKAGE)), any(), anyInt()))
|
||||
.then(copyBackupDataTo(backupDataPath));
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
agentOnBackupDo(
|
||||
pmAgent,
|
||||
(oldState, dataOutput, newState) -> {
|
||||
@@ -1380,7 +1390,8 @@ public class KeyValueBackupTaskTest {
|
||||
setUpAgent(PACKAGE_1);
|
||||
when(transportMock.transport.finishBackup()).thenReturn(BackupTransport.TRANSPORT_OK);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
agentOnBackupDo(
|
||||
pmAgent,
|
||||
(oldState, dataOutput, newState) -> {
|
||||
@@ -1404,7 +1415,8 @@ public class KeyValueBackupTaskTest {
|
||||
setUpAgent(PACKAGE_1);
|
||||
when(transportMock.transport.finishBackup()).thenReturn(BackupTransport.TRANSPORT_OK);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
agentOnBackupDo(
|
||||
pmAgent,
|
||||
(oldState, dataOutput, newState) -> {
|
||||
@@ -1669,7 +1681,7 @@ public class KeyValueBackupTaskTest {
|
||||
|
||||
verify(mReporter).onPackageBackupTransportFailure(PACKAGE_1.packageName);
|
||||
verify(mReporter).onTransportNotInitialized(mTransport.transportName);
|
||||
verify(mReporter).onBackupFinished(BackupManager.ERROR_TRANSPORT_ABORTED);
|
||||
verify(mReporter).onBackupFinished(ERROR_TRANSPORT_ABORTED);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -1686,7 +1698,7 @@ public class KeyValueBackupTaskTest {
|
||||
|
||||
verify(mReporter).onPackageBackupTransportFailure(PM_PACKAGE.packageName);
|
||||
verify(mReporter).onTransportNotInitialized(mTransport.transportName);
|
||||
verify(mReporter).onBackupFinished(BackupManager.ERROR_TRANSPORT_ABORTED);
|
||||
verify(mReporter).onBackupFinished(ERROR_TRANSPORT_ABORTED);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -1983,7 +1995,8 @@ public class KeyValueBackupTaskTest {
|
||||
public void testRunTask_whenPmAgentFails_reportsCorrectly() throws Exception {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
BackupAgent pmAgent = createThrowingPmAgent(new RuntimeException());
|
||||
when(mBackupManagerService.makeMetadataAgent()).thenReturn(pmAgent);
|
||||
when(mBackupManagerService.makeMetadataAgentWithEligibilityRules(
|
||||
mBackupEligibilityRules)).thenReturn(pmAgent);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, PACKAGE_1);
|
||||
|
||||
runTask(task);
|
||||
@@ -2001,7 +2014,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgent(PACKAGE_1);
|
||||
BackupAgent pmAgent = createThrowingPmAgent(new RuntimeException());
|
||||
doReturn(pmAgent).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(pmAgent).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, PACKAGE_1);
|
||||
|
||||
runTask(task);
|
||||
@@ -2014,7 +2028,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgent(PACKAGE_1);
|
||||
BackupAgent pmAgent = createThrowingPmAgent(new RuntimeException());
|
||||
doReturn(pmAgent).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(pmAgent).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, PACKAGE_1);
|
||||
|
||||
runTask(task);
|
||||
@@ -2027,7 +2042,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgent(PACKAGE_1);
|
||||
BackupAgent pmAgent = createThrowingPmAgent(new RuntimeException());
|
||||
doReturn(pmAgent).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(pmAgent).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, PACKAGE_1);
|
||||
|
||||
runTask(task);
|
||||
@@ -2040,7 +2056,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgent(PACKAGE_1);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, PACKAGE_1);
|
||||
agentOnBackupDo(
|
||||
pmAgent, (oldState, dataOutput, newState) -> runInWorkerThread(task::markCancel));
|
||||
@@ -2055,7 +2072,8 @@ public class KeyValueBackupTaskTest {
|
||||
TransportMock transportMock = setUpInitializedTransport(mTransport);
|
||||
setUpAgent(PACKAGE_1);
|
||||
BackupAgent pmAgent = spy(createPmAgent());
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService).makeMetadataAgent();
|
||||
doReturn(forward(pmAgent)).when(mBackupManagerService)
|
||||
.makeMetadataAgentWithEligibilityRules(mBackupEligibilityRules);
|
||||
KeyValueBackupTask task = createKeyValueBackupTask(transportMock, PACKAGE_1);
|
||||
agentOnBackupDo(
|
||||
pmAgent, (oldState, dataOutput, newState) -> runInWorkerThread(task::markCancel));
|
||||
@@ -2652,14 +2670,16 @@ public class KeyValueBackupTaskTest {
|
||||
mListener,
|
||||
emptyList(),
|
||||
/* userInitiated */ false,
|
||||
nonIncremental);
|
||||
nonIncremental,
|
||||
mBackupEligibilityRules);
|
||||
mBackupManager.setUp(mBackupHandler, task);
|
||||
return task;
|
||||
}
|
||||
|
||||
private PackageManagerBackupAgent createPmAgent() {
|
||||
PackageManagerBackupAgent pmAgent =
|
||||
new PackageManagerBackupAgent(mApplication.getPackageManager(), USER_ID);
|
||||
new PackageManagerBackupAgent(mApplication.getPackageManager(), USER_ID,
|
||||
mBackupEligibilityRules);
|
||||
pmAgent.attach(mApplication);
|
||||
pmAgent.onCreate();
|
||||
return pmAgent;
|
||||
@@ -2671,7 +2691,8 @@ public class KeyValueBackupTaskTest {
|
||||
*/
|
||||
private PackageManagerBackupAgent createThrowingPmAgent(RuntimeException exception) {
|
||||
PackageManagerBackupAgent pmAgent =
|
||||
new ThrowingPackageManagerBackupAgent(mApplication.getPackageManager(), exception);
|
||||
new ThrowingPackageManagerBackupAgent(mApplication.getPackageManager(), exception,
|
||||
mBackupEligibilityRules);
|
||||
pmAgent.attach(mApplication);
|
||||
pmAgent.onCreate();
|
||||
return pmAgent;
|
||||
@@ -2985,8 +3006,9 @@ public class KeyValueBackupTaskTest {
|
||||
private final RuntimeException mException;
|
||||
|
||||
ThrowingPackageManagerBackupAgent(
|
||||
PackageManager packageManager, RuntimeException exception) {
|
||||
super(packageManager, USER_ID);
|
||||
PackageManager packageManager, RuntimeException exception,
|
||||
BackupEligibilityRules backupEligibilityRules) {
|
||||
super(packageManager, USER_ID, backupEligibilityRules);
|
||||
mException = exception;
|
||||
}
|
||||
|
||||
|
||||
@@ -1,81 +0,0 @@
|
||||
/*
|
||||
* Copyright (C) 2018 The Android Open Source Project
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License
|
||||
*/
|
||||
|
||||
package com.android.server.testing.shadows;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
|
||||
import com.android.server.backup.transport.TransportClient;
|
||||
import com.android.server.backup.utils.AppBackupUtils;
|
||||
|
||||
import org.robolectric.annotation.Implementation;
|
||||
import org.robolectric.annotation.Implements;
|
||||
import org.robolectric.annotation.Resetter;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
@Implements(AppBackupUtils.class)
|
||||
public class ShadowAppBackupUtils {
|
||||
private static final Set<String> sAppsRunningAndEligibleForBackupWithTransport =
|
||||
new HashSet<>();
|
||||
private static final Set<String> sAppsEligibleForBackup = new HashSet<>();
|
||||
private static final Set<String> sAppsGetFullBackup = new HashSet<>();
|
||||
|
||||
public static void setAppRunningAndEligibleForBackupWithTransport(String packageName) {
|
||||
sAppsEligibleForBackup.add(packageName);
|
||||
sAppsRunningAndEligibleForBackupWithTransport.add(packageName);
|
||||
}
|
||||
|
||||
public static void setAppEligibleForBackup(String packageName) {
|
||||
sAppsEligibleForBackup.add(packageName);
|
||||
}
|
||||
|
||||
/** By default the app will be key-value. */
|
||||
public static void setAppGetsFullBackup(String packageName) {
|
||||
sAppsGetFullBackup.add(packageName);
|
||||
}
|
||||
|
||||
@Implementation
|
||||
protected static boolean appIsRunningAndEligibleForBackupWithTransport(
|
||||
@Nullable TransportClient transportClient,
|
||||
String packageName,
|
||||
PackageManager pm,
|
||||
int userId) {
|
||||
return sAppsRunningAndEligibleForBackupWithTransport.contains(packageName);
|
||||
}
|
||||
|
||||
@Implementation
|
||||
protected static boolean appIsEligibleForBackup(ApplicationInfo app, int userId,
|
||||
int operationType) {
|
||||
return sAppsEligibleForBackup.contains(app.packageName);
|
||||
}
|
||||
|
||||
@Implementation
|
||||
protected static boolean appGetsFullBackup(PackageInfo packageInfo, int operationType) {
|
||||
return sAppsGetFullBackup.contains(packageInfo.packageName);
|
||||
}
|
||||
|
||||
@Resetter
|
||||
public static void reset() {
|
||||
sAppsRunningAndEligibleForBackupWithTransport.clear();
|
||||
sAppsEligibleForBackup.clear();
|
||||
sAppsGetFullBackup.clear();
|
||||
}
|
||||
}
|
||||
@@ -24,6 +24,7 @@ import com.android.server.backup.internal.OnTaskFinishedListener;
|
||||
import com.android.server.backup.keyvalue.KeyValueBackupReporter;
|
||||
import com.android.server.backup.keyvalue.KeyValueBackupTask;
|
||||
import com.android.server.backup.transport.TransportClient;
|
||||
import com.android.server.backup.utils.BackupEligibilityRules;
|
||||
|
||||
import org.robolectric.annotation.Implementation;
|
||||
import org.robolectric.annotation.Implements;
|
||||
@@ -63,7 +64,8 @@ public class ShadowKeyValueBackupTask {
|
||||
OnTaskFinishedListener listener,
|
||||
List<String> pendingFullBackups,
|
||||
boolean userInitiated,
|
||||
boolean nonIncremental) {
|
||||
boolean nonIncremental,
|
||||
BackupEligibilityRules backupEligibilityRules) {
|
||||
mListener = listener;
|
||||
mQueue = queue;
|
||||
mPendingFullBackups = pendingFullBackups;
|
||||
|
||||
@@ -25,6 +25,7 @@ import com.android.server.backup.UserBackupManagerService;
|
||||
import com.android.server.backup.internal.OnTaskFinishedListener;
|
||||
import com.android.server.backup.restore.PerformUnifiedRestoreTask;
|
||||
import com.android.server.backup.transport.TransportClient;
|
||||
import com.android.server.backup.utils.BackupEligibilityRules;
|
||||
|
||||
import org.robolectric.annotation.Implementation;
|
||||
import org.robolectric.annotation.Implements;
|
||||
@@ -67,7 +68,8 @@ public class ShadowPerformUnifiedRestoreTask {
|
||||
int pmToken,
|
||||
boolean isFullSystemRestore,
|
||||
@Nullable String[] filterSet,
|
||||
OnTaskFinishedListener listener) {
|
||||
OnTaskFinishedListener listener,
|
||||
BackupEligibilityRules backupEligibilityRules) {
|
||||
mBackupManagerService = backupManagerService;
|
||||
mPackage = targetPackage;
|
||||
mIsFullSystemRestore = isFullSystemRestore;
|
||||
|
||||
Reference in New Issue
Block a user