summaryrefslogtreecommitdiffstats
path: root/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
diff options
context:
space:
mode:
authorSudheer Shanka <sudheersai@google.com>2018-12-21 10:22:09 -0800
committerSudheer Shanka <sudheersai@google.com>2019-01-06 01:35:26 -0800
commit1a76686c2f9771635b6ef57d930d875d20239531 (patch)
treee6eb005daaf0f86f8d935d58cb652b55504a8e3f /tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
parentdb0fc4debef41fb058e9f7e198ba399f7a4bffec (diff)
downloadandroid_packages_providers_DownloadProvider-1a76686c2f9771635b6ef57d930d875d20239531.tar.gz
android_packages_providers_DownloadProvider-1a76686c2f9771635b6ef57d930d875d20239531.tar.bz2
android_packages_providers_DownloadProvider-1a76686c2f9771635b6ef57d930d875d20239531.zip
Add DownloadProvider entries to MediaStore Downloads collection.
Files downloaded using DownloadManager or those added to DownloadProvider using DownloadManager.addCompletedDownload() API are added to MediaStore Downloads collection so that apps can query all their downloads using MediaStore collection APIs. Bug: 120876251 Test: atest DownloadProviderTests Test: atest cts/tests/app/src/android/app/cts/DownloadManagerTest.java Test: atest MediaProviderTests Test: atest cts/tests/tests/provider/src/android/provider/cts/MediaStore* Change-Id: Icaff9b013bb9486651ce0b5631cc48e80cdbb4b9
Diffstat (limited to 'tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java')
-rw-r--r--tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java37
1 files changed, 37 insertions, 0 deletions
diff --git a/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java b/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
index 13d2c36e..38bf4d65 100644
--- a/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
+++ b/tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java
@@ -24,15 +24,22 @@ import android.app.NotificationManager;
import android.app.job.JobParameters;
import android.app.job.JobScheduler;
import android.content.ContentResolver;
+import android.content.ContentValues;
import android.content.Context;
import android.content.pm.ProviderInfo;
import android.database.ContentObserver;
import android.database.Cursor;
+import android.database.DatabaseUtils;
+import android.database.MatrixCursor;
import android.net.Uri;
+import android.os.Binder;
+import android.os.IBinder;
import android.provider.Downloads;
+import android.provider.MediaStore;
import android.test.MoreAsserts;
import android.test.RenamingDelegatingContext;
import android.test.ServiceTestCase;
+import android.test.mock.MockContentProvider;
import android.test.mock.MockContentResolver;
import android.util.Log;
@@ -92,6 +99,35 @@ public abstract class AbstractDownloadProviderFunctionalTest extends
}
}
+ static class MockMediaProvider extends MockContentProvider {
+ private static final Uri TEST_URI = Uri.parse("content://media/external/11111111");
+ @Override
+ public int delete(Uri uri, String selection, String[] selectionArgs) {
+ return 0;
+ }
+
+ @Override
+ public Uri insert(Uri uri, ContentValues values) {
+ return TEST_URI;
+ }
+
+ @Override
+ public Cursor query(Uri uri, String[] projection, String selection, String[] selectionArgs,
+ String sortOrder) {
+ return new MatrixCursor(new String[0], 0);
+ }
+
+ @Override
+ public int update(Uri uri, ContentValues values, String selection, String[] selectionArgs) {
+ return 1;
+ }
+
+ @Override
+ public IBinder getIContentProviderBinder() {
+ return new Binder();
+ }
+ }
+
/**
* Context passed to the provider and the service. Allows most methods to pass through to the
* real Context (this is a LargeTest), with a few exceptions, including renaming file operations
@@ -165,6 +201,7 @@ public abstract class AbstractDownloadProviderFunctionalTest extends
provider.attachInfo(mTestContext, info);
mResolver.addProvider(PROVIDER_AUTHORITY, provider);
+ mResolver.addProvider(MediaStore.AUTHORITY, new MockMediaProvider());
setContext(mTestContext);
setupService();