diff options
author | Sudheer Shanka <sudheersai@google.com> | 2018-12-21 10:22:09 -0800 |
---|---|---|
committer | Sudheer Shanka <sudheersai@google.com> | 2019-01-06 01:35:26 -0800 |
commit | 1a76686c2f9771635b6ef57d930d875d20239531 (patch) | |
tree | e6eb005daaf0f86f8d935d58cb652b55504a8e3f /tests/src/com/android/providers | |
parent | db0fc4debef41fb058e9f7e198ba399f7a4bffec (diff) | |
download | android_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')
-rw-r--r-- | tests/src/com/android/providers/downloads/AbstractDownloadProviderFunctionalTest.java | 37 |
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(); |