diff options
author | Steve Howard <showard@google.com> | 2010-08-18 15:08:50 -0700 |
---|---|---|
committer | Steve Howard <showard@google.com> | 2010-08-18 15:08:50 -0700 |
commit | 99a9c8fbffc70670553ded9bfb4b08c89c67fc7e (patch) | |
tree | abfb2babdf3c8919a6a1289d4a34651e2318a67b | |
parent | 80524686339536d8b65167dd745e87eea3bdb590 (diff) | |
parent | 2f3c8c7eba7d1109cfb5a1886f094f6821376f11 (diff) | |
download | android_packages_providers_DownloadProvider-99a9c8fbffc70670553ded9bfb4b08c89c67fc7e.tar.gz android_packages_providers_DownloadProvider-99a9c8fbffc70670553ded9bfb4b08c89c67fc7e.tar.bz2 android_packages_providers_DownloadProvider-99a9c8fbffc70670553ded9bfb4b08c89c67fc7e.zip |
resolved conflicts for merge of 2f3c8c7e to master
Change-Id: Idcaa37fc828bfae41a150f2cce7b55fa152987be
-rw-r--r-- | src/com/android/providers/downloads/DownloadProvider.java | 12 | ||||
-rw-r--r-- | tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java | 12 |
2 files changed, 22 insertions, 2 deletions
diff --git a/src/com/android/providers/downloads/DownloadProvider.java b/src/com/android/providers/downloads/DownloadProvider.java index f6b65c3c..900797f8 100644 --- a/src/com/android/providers/downloads/DownloadProvider.java +++ b/src/com/android/providers/downloads/DownloadProvider.java @@ -415,8 +415,8 @@ public final class DownloadProvider extends ContentProvider { if (Binder.getCallingUid() == 0) { copyInteger(Constants.UID, values, filteredValues); } - copyString(Downloads.Impl.COLUMN_TITLE, values, filteredValues); - copyString(Downloads.Impl.COLUMN_DESCRIPTION, values, filteredValues); + copyStringWithDefault(Downloads.Impl.COLUMN_TITLE, values, filteredValues, ""); + copyStringWithDefault(Downloads.Impl.COLUMN_DESCRIPTION, values, filteredValues, ""); filteredValues.put(Downloads.Impl.COLUMN_TOTAL_BYTES, -1); if (isPublicApi) { @@ -980,4 +980,12 @@ public final class DownloadProvider extends ContentProvider { to.put(key, s); } } + + private static final void copyStringWithDefault(String key, ContentValues from, + ContentValues to, String defaultValue) { + copyString(key, from, to); + if (!to.containsKey(key)) { + to.put(key, defaultValue); + } + } } diff --git a/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java b/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java index 6d604778..cf2b990c 100644 --- a/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java +++ b/tests/src/com/android/providers/downloads/PublicApiFunctionalTest.java @@ -482,6 +482,18 @@ public class PublicApiFunctionalTest extends AbstractPublicApiTest { download.getLongField(DownloadManager.COLUMN_ERROR_CODE)); } + public void testEmptyFields() throws Exception { + Download download = enqueueRequest(getRequest()); + assertNull(download.getStringField(DownloadManager.COLUMN_LOCAL_URI)); + assertEquals("", download.getStringField(DownloadManager.COLUMN_TITLE)); + assertEquals("", download.getStringField(DownloadManager.COLUMN_DESCRIPTION)); + assertNull(download.getStringField(DownloadManager.COLUMN_MEDIA_TYPE)); + assertEquals(0, download.getLongField(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR)); + assertEquals(-1, download.getLongField(DownloadManager.COLUMN_TOTAL_SIZE_BYTES)); + // just ensure no exception is thrown + download.getLongField(DownloadManager.COLUMN_ERROR_CODE); + } + private void checkCompleteDownload(Download download) throws Exception { assertEquals(FILE_CONTENT.length(), download.getLongField(DownloadManager.COLUMN_BYTES_DOWNLOADED_SO_FAR)); |