| Index: chrome/android/javatests/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapterTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapterTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapterTest.java
|
| index 233c99480cea655ec9a1804ab4884d3efe809a9f..9f6723678d1277d37f10de1cab07543e00f4b7b4 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapterTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/download/ui/DownloadHistoryAdapterTest.java
|
| @@ -11,7 +11,6 @@ import android.support.v7.widget.RecyclerView;
|
| import android.test.suitebuilder.annotation.SmallTest;
|
|
|
| import org.chromium.base.ThreadUtils;
|
| -import org.chromium.chrome.browser.download.DownloadInfo;
|
| import org.chromium.chrome.browser.download.DownloadItem;
|
| import org.chromium.chrome.browser.download.ui.StubbedProvider.StubbedDownloadDelegate;
|
| import org.chromium.chrome.browser.download.ui.StubbedProvider.StubbedOfflinePageDelegate;
|
| @@ -19,9 +18,6 @@ import org.chromium.chrome.browser.offlinepages.downloads.OfflinePageDownloadIte
|
| import org.chromium.content.browser.test.NativeLibraryTestBase;
|
| import org.chromium.content.browser.test.util.CallbackHelper;
|
|
|
| -import java.text.SimpleDateFormat;
|
| -import java.util.Locale;
|
| -
|
| /**
|
| * Tests a DownloadHistoryAdapter that is isolated from the real bridges.
|
| */
|
| @@ -82,7 +78,7 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** One downloaded item should show the item and a date header. */
|
| @SmallTest
|
| public void testInitialize_SingleItem() throws Exception {
|
| - DownloadItem item = createDownloadItem(0, "19840116 12:00");
|
| + DownloadItem item = StubbedProvider.createDownloadItem(0, "19840116 12:00");
|
| mDownloadDelegate.regularItems.add(item);
|
| initializeAdapter(false);
|
| checkAdapterContents(null, item);
|
| @@ -92,8 +88,8 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** Two items downloaded on the same day should end up in the same group, in recency order. */
|
| @SmallTest
|
| public void testInitialize_TwoItemsOneDate() throws Exception {
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 12:00");
|
| - DownloadItem item1 = createDownloadItem(1, "19840116 12:01");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 12:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840116 12:01");
|
| mDownloadDelegate.regularItems.add(item0);
|
| mDownloadDelegate.regularItems.add(item1);
|
| initializeAdapter(false);
|
| @@ -104,8 +100,8 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** Two items downloaded on different days should end up in different date groups. */
|
| @SmallTest
|
| public void testInitialize_TwoItemsTwoDates() throws Exception {
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 12:00");
|
| - DownloadItem item1 = createDownloadItem(1, "19840117 12:00");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 12:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840117 12:00");
|
| mDownloadDelegate.regularItems.add(item0);
|
| mDownloadDelegate.regularItems.add(item1);
|
| initializeAdapter(false);
|
| @@ -116,8 +112,8 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** Off the record downloads are ignored if the DownloadHistoryAdapter isn't watching them. */
|
| @SmallTest
|
| public void testInitialize_OffTheRecord_Ignored() throws Exception {
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 12:00");
|
| - DownloadItem item1 = createDownloadItem(1, "19840116 12:01");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 12:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840116 12:01");
|
| mDownloadDelegate.regularItems.add(item0);
|
| mDownloadDelegate.offTheRecordItems.add(item1);
|
| initializeAdapter(false);
|
| @@ -128,8 +124,8 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** A regular and a off the record item with the same date are bucketed together. */
|
| @SmallTest
|
| public void testInitialize_OffTheRecord_TwoItemsOneDate() throws Exception {
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 18:00");
|
| - DownloadItem item1 = createDownloadItem(1, "19840116 12:00");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 18:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840116 12:00");
|
| mDownloadDelegate.regularItems.add(item0);
|
| mDownloadDelegate.offTheRecordItems.add(item1);
|
| initializeAdapter(true);
|
| @@ -140,9 +136,9 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** Test that all the download item types intermingle correctly. */
|
| @SmallTest
|
| public void testInitialize_ThreeItemsDifferentKinds() throws Exception {
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 18:00");
|
| - DownloadItem item1 = createDownloadItem(1, "19840116 12:00");
|
| - OfflinePageDownloadItem item2 = createOfflineItem(2, "19840117 6:00");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 18:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840116 12:00");
|
| + OfflinePageDownloadItem item2 = StubbedProvider.createOfflineItem(2, "19840117 6:00");
|
| mDownloadDelegate.regularItems.add(item0);
|
| mDownloadDelegate.offTheRecordItems.add(item1);
|
| mOfflineDelegate.items.add(item2);
|
| @@ -161,7 +157,7 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
|
|
| // Add the first item.
|
| assertEquals(2, mObserver.onChangedCallback.getCallCount());
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 12:00");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 12:00");
|
| mAdapter.onDownloadItemUpdated(item0, false);
|
| mObserver.onChangedCallback.waitForCallback(2);
|
| checkAdapterContents(null, item0);
|
| @@ -169,7 +165,7 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
|
|
| // Add a second item with a different date.
|
| assertEquals(3, mObserver.onChangedCallback.getCallCount());
|
| - DownloadItem item1 = createDownloadItem(1, "19840117 12:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840117 12:00");
|
| mAdapter.onDownloadItemUpdated(item1, false);
|
| mObserver.onChangedCallback.waitForCallback(3);
|
| checkAdapterContents(null, item1, null, item0);
|
| @@ -177,7 +173,7 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
|
|
| // Add a third item with the same date as the second item.
|
| assertEquals(4, mObserver.onChangedCallback.getCallCount());
|
| - DownloadItem item2 = createDownloadItem(2, "19840117 18:00");
|
| + DownloadItem item2 = StubbedProvider.createDownloadItem(2, "19840117 18:00");
|
| mAdapter.onDownloadItemUpdated(item2, false);
|
| mObserver.onChangedCallback.waitForCallback(4);
|
| checkAdapterContents(null, item2, item1, null, item0);
|
| @@ -185,7 +181,7 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
|
|
| // An item with the same download ID as the second item should just update the old one.
|
| assertEquals(5, mObserver.onChangedCallback.getCallCount());
|
| - DownloadItem item3 = createDownloadItem(2, "19840117 18:00");
|
| + DownloadItem item3 = StubbedProvider.createDownloadItem(2, "19840117 18:00");
|
| mAdapter.onDownloadItemUpdated(item3, false);
|
| mObserver.onChangedCallback.waitForCallback(5);
|
| checkAdapterContents(null, item3, item1, null, item0);
|
| @@ -193,14 +189,14 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
|
|
| // Throw on a new OfflinePageItem.
|
| assertEquals(6, mObserver.onChangedCallback.getCallCount());
|
| - OfflinePageDownloadItem item4 = createOfflineItem(0, "19840117 19:00");
|
| + OfflinePageDownloadItem item4 = StubbedProvider.createOfflineItem(0, "19840117 19:00");
|
| mOfflineDelegate.observer.onItemAdded(item4);
|
| mObserver.onChangedCallback.waitForCallback(6);
|
| checkAdapterContents(null, item4, item3, item1, null, item0);
|
|
|
| // Update the existing OfflinePageItem.
|
| assertEquals(7, mObserver.onChangedCallback.getCallCount());
|
| - OfflinePageDownloadItem item5 = createOfflineItem(0, "19840117 19:00");
|
| + OfflinePageDownloadItem item5 = StubbedProvider.createOfflineItem(0, "19840117 19:00");
|
| mOfflineDelegate.observer.onItemUpdated(item5);
|
| mObserver.onChangedCallback.waitForCallback(7);
|
| checkAdapterContents(null, item5, item3, item1, null, item0);
|
| @@ -210,9 +206,10 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| @SmallTest
|
| public void testRemove_ThreeItemsTwoDates() throws Exception {
|
| // Initialize the DownloadHistoryAdapter with three items in two date buckets.
|
| - DownloadItem regularItem = createDownloadItem(0, "19840116 18:00");
|
| - DownloadItem offTheRecordItem = createDownloadItem(1, "19840116 12:00");
|
| - OfflinePageDownloadItem offlineItem = createOfflineItem(2, "19840117 12:01");
|
| + DownloadItem regularItem = StubbedProvider.createDownloadItem(0, "19840116 18:00");
|
| + DownloadItem offTheRecordItem = StubbedProvider.createDownloadItem(1, "19840116 12:00");
|
| + OfflinePageDownloadItem offlineItem =
|
| + StubbedProvider.createOfflineItem(2, "19840117 12:01");
|
| mDownloadDelegate.regularItems.add(regularItem);
|
| mDownloadDelegate.offTheRecordItems.add(offTheRecordItem);
|
| mOfflineDelegate.items.add(offlineItem);
|
| @@ -245,13 +242,13 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** Test filtering of items. */
|
| @SmallTest
|
| public void testFilter_SevenItems() throws Exception {
|
| - DownloadItem item0 = createDownloadItem(0, "19840116 12:00");
|
| - DownloadItem item1 = createDownloadItem(1, "19840116 12:01");
|
| - DownloadItem item2 = createDownloadItem(2, "19840117 12:00");
|
| - DownloadItem item3 = createDownloadItem(3, "19840117 12:01");
|
| - DownloadItem item4 = createDownloadItem(4, "19840118 12:00");
|
| - DownloadItem item5 = createDownloadItem(5, "19840118 12:01");
|
| - OfflinePageDownloadItem item6 = createOfflineItem(0, "19840118 6:00");
|
| + DownloadItem item0 = StubbedProvider.createDownloadItem(0, "19840116 12:00");
|
| + DownloadItem item1 = StubbedProvider.createDownloadItem(1, "19840116 12:01");
|
| + DownloadItem item2 = StubbedProvider.createDownloadItem(2, "19840117 12:00");
|
| + DownloadItem item3 = StubbedProvider.createDownloadItem(3, "19840117 12:01");
|
| + DownloadItem item4 = StubbedProvider.createDownloadItem(4, "19840118 12:00");
|
| + DownloadItem item5 = StubbedProvider.createDownloadItem(5, "19840118 12:01");
|
| + OfflinePageDownloadItem item6 = StubbedProvider.createOfflineItem(0, "19840118 6:00");
|
| mDownloadDelegate.regularItems.add(item0);
|
| mDownloadDelegate.offTheRecordItems.add(item1);
|
| mDownloadDelegate.regularItems.add(item2);
|
| @@ -284,9 +281,9 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| /** Tests that the list is updated appropriately when Offline Pages are deleted. */
|
| @SmallTest
|
| public void testFilter_AfterOfflineDeletions() throws Exception {
|
| - OfflinePageDownloadItem item0 = createOfflineItem(0, "19840116 6:00");
|
| - OfflinePageDownloadItem item1 = createOfflineItem(1, "19840116 12:00");
|
| - OfflinePageDownloadItem item2 = createOfflineItem(2, "19840120 6:00");
|
| + OfflinePageDownloadItem item0 = StubbedProvider.createOfflineItem(0, "19840116 6:00");
|
| + OfflinePageDownloadItem item1 = StubbedProvider.createOfflineItem(1, "19840116 12:00");
|
| + OfflinePageDownloadItem item2 = StubbedProvider.createOfflineItem(2, "19840120 6:00");
|
| mOfflineDelegate.items.add(item0);
|
| mOfflineDelegate.items.add(item1);
|
| mOfflineDelegate.items.add(item2);
|
| @@ -328,93 +325,4 @@ public class DownloadHistoryAdapterTest extends NativeLibraryTestBase {
|
| }
|
| }
|
|
|
| - /** Converts a date string to a timestamp. */
|
| - private long dateToEpoch(String dateStr) throws Exception {
|
| - return new SimpleDateFormat("yyyyMMdd HH:mm", Locale.getDefault()).parse(dateStr).getTime();
|
| - }
|
| -
|
| - /** Creates a new DownloadItem with pre-defined values. */
|
| - private DownloadItem createDownloadItem(int which, String date)
|
| - throws Exception {
|
| - DownloadItem item = null;
|
| - if (which == 0) {
|
| - item = new DownloadItem(false, new DownloadInfo.Builder()
|
| - .setUrl("https://google.com")
|
| - .setContentLength(1)
|
| - .setFileName("first_file.jpg")
|
| - .setFilePath("/storage/fake_path/Downloads/first_file.jpg")
|
| - .setDownloadGuid("first_guid")
|
| - .setMimeType("image/jpeg")
|
| - .build());
|
| - } else if (which == 1) {
|
| - item = new DownloadItem(false, new DownloadInfo.Builder()
|
| - .setUrl("https://one.com")
|
| - .setContentLength(10)
|
| - .setFileName("second_file.gif")
|
| - .setFilePath("/storage/fake_path/Downloads/second_file.gif")
|
| - .setDownloadGuid("second_guid")
|
| - .setMimeType("image/gif")
|
| - .build());
|
| - } else if (which == 2) {
|
| - item = new DownloadItem(false, new DownloadInfo.Builder()
|
| - .setUrl("https://is.com")
|
| - .setContentLength(100)
|
| - .setFileName("third_file")
|
| - .setFilePath("/storage/fake_path/Downloads/third_file")
|
| - .setDownloadGuid("third_guid")
|
| - .setMimeType("text/plain")
|
| - .build());
|
| - } else if (which == 3) {
|
| - item = new DownloadItem(false, new DownloadInfo.Builder()
|
| - .setUrl("https://the.com")
|
| - .setContentLength(5)
|
| - .setFileName("four.webm")
|
| - .setFilePath("/storage/fake_path/Downloads/four.webm")
|
| - .setDownloadGuid("fourth_guid")
|
| - .setMimeType("video/webm")
|
| - .build());
|
| - } else if (which == 4) {
|
| - item = new DownloadItem(false, new DownloadInfo.Builder()
|
| - .setUrl("https://loneliest.com")
|
| - .setContentLength(50)
|
| - .setFileName("five.mp3")
|
| - .setFilePath("/storage/fake_path/Downloads/five.mp3")
|
| - .setDownloadGuid("fifth_guid")
|
| - .setMimeType("audio/mp3")
|
| - .build());
|
| - } else if (which == 5) {
|
| - item = new DownloadItem(false, new DownloadInfo.Builder()
|
| - .setUrl("https://number.com")
|
| - .setContentLength(500)
|
| - .setFileName("six.mp3")
|
| - .setFilePath("/storage/fake_path/Downloads/six.mp3")
|
| - .setDownloadGuid("sixth_guid")
|
| - .setMimeType("audio/mp3")
|
| - .build());
|
| - } else {
|
| - return null;
|
| - }
|
| -
|
| - item.setStartTime(dateToEpoch(date));
|
| - return item;
|
| - }
|
| -
|
| - /** Creates a new OfflinePageDownloadItem with pre-defined values. */
|
| - private OfflinePageDownloadItem createOfflineItem(int which, String date)
|
| - throws Exception {
|
| - long startTime = dateToEpoch(date);
|
| - if (which == 0) {
|
| - return new OfflinePageDownloadItem("offline_guid_1", "https://url.com",
|
| - "page 1", "/data/fake_path/Downloads/first_file", startTime, 1000);
|
| - } else if (which == 1) {
|
| - return new OfflinePageDownloadItem("offline_guid_2", "http://stuff_and_things.com",
|
| - "page 2", "/data/fake_path/Downloads/file_two", startTime, 10000);
|
| - } else if (which == 2) {
|
| - return new OfflinePageDownloadItem("offline_guid_3", "https://url.com",
|
| - "page 3", "/data/fake_path/Downloads/3_file", startTime, 100000);
|
| - } else {
|
| - return null;
|
| - }
|
| - }
|
| -
|
| }
|
|
|