Skip BackupQuotaTest if FEATURE_BACKUP is not declared
Earlier change skipped the test if LOCAL_TRANSPORT is not present.
Such a condition should only be allowed if the PackageManager
feature flag FEATURE_BACKUP is not declared.
Bug: 30120602
Change-Id: Ia5ffd331b83ab9850fabcda08fa1b3237149a988
diff --git a/tests/backup/src/android/backup/cts/BackupQuotaTest.java b/tests/backup/src/android/backup/cts/BackupQuotaTest.java
index bec28c7..0493993 100644
--- a/tests/backup/src/android/backup/cts/BackupQuotaTest.java
+++ b/tests/backup/src/android/backup/cts/BackupQuotaTest.java
@@ -17,6 +17,7 @@
package android.backup.cts;
import android.app.Instrumentation;
+import android.content.pm.PackageManager;
import android.os.ParcelFileDescriptor;
import android.test.InstrumentationTestCase;
import android.util.Log;
@@ -46,18 +47,21 @@
private static final int SMALL_LOGCAT_DELAY = 1000;
- private boolean localTransportIsPresent;
+ private boolean isBackupSupported;
private boolean wasBackupEnabled;
private String oldTransport;
@Override
protected void setUp() throws Exception {
super.setUp();
- localTransportIsPresent = hasBackupTransport(LOCAL_TRANSPORT);
- if (!localTransportIsPresent) {
+ PackageManager packageManager = getInstrumentation().getContext().getPackageManager();
+ isBackupSupported = packageManager != null
+ && packageManager.hasSystemFeature(PackageManager.FEATURE_BACKUP);
+ if (!isBackupSupported) {
return;
}
// Enable backup and select local backup transport
+ assertTrue("LocalTransport should be available.", hasBackupTransport(LOCAL_TRANSPORT));
wasBackupEnabled = enableBackup(true);
oldTransport = setBackupTransport(LOCAL_TRANSPORT);
}
@@ -65,7 +69,7 @@
@Override
protected void tearDown() throws Exception {
// Return old transport
- if (localTransportIsPresent) {
+ if (isBackupSupported) {
setBackupTransport(oldTransport);
enableBackup(wasBackupEnabled);
}
@@ -73,7 +77,7 @@
}
public void testQuotaExceeded() throws Exception {
- if (!localTransportIsPresent) {
+ if (!isBackupSupported) {
return;
}
exec("logcat --clear");