OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 package org.chromium.chrome.browser.ntp.cards; | 5 package org.chromium.chrome.browser.ntp.cards; |
6 | 6 |
7 import android.content.res.Resources; | 7 import android.content.res.Resources; |
8 import android.support.test.filters.MediumTest; | 8 import android.support.test.filters.MediumTest; |
9 import android.support.v7.widget.RecyclerView; | 9 import android.support.v7.widget.RecyclerView; |
10 import android.support.v7.widget.RecyclerView.ViewHolder; | 10 import android.support.v7.widget.RecyclerView.ViewHolder; |
11 import android.view.View; | 11 import android.view.View; |
12 | 12 |
13 import org.chromium.base.ThreadUtils; | 13 import org.chromium.base.ThreadUtils; |
14 import org.chromium.base.test.util.CommandLineFlags; | 14 import org.chromium.base.test.util.CommandLineFlags; |
15 import org.chromium.base.test.util.Feature; | 15 import org.chromium.base.test.util.Feature; |
16 import org.chromium.base.test.util.Restriction; | 16 import org.chromium.base.test.util.Restriction; |
17 import org.chromium.base.test.util.RetryOnFailure; | 17 import org.chromium.base.test.util.RetryOnFailure; |
18 import org.chromium.chrome.R; | 18 import org.chromium.chrome.R; |
19 import org.chromium.chrome.browser.ChromeFeatureList; | 19 import org.chromium.chrome.browser.ChromeFeatureList; |
20 import org.chromium.chrome.browser.UrlConstants; | 20 import org.chromium.chrome.browser.UrlConstants; |
21 import org.chromium.chrome.browser.ntp.ContextMenuManager; | 21 import org.chromium.chrome.browser.ntp.ContextMenuManager; |
22 import org.chromium.chrome.browser.ntp.NTPTileSource; | |
23 import org.chromium.chrome.browser.ntp.NewTabPage; | 22 import org.chromium.chrome.browser.ntp.NewTabPage; |
24 import org.chromium.chrome.browser.ntp.NewTabPageView; | 23 import org.chromium.chrome.browser.ntp.NewTabPageView; |
25 import org.chromium.chrome.browser.ntp.snippets.CategoryInt; | 24 import org.chromium.chrome.browser.ntp.snippets.CategoryInt; |
26 import org.chromium.chrome.browser.ntp.snippets.CategoryStatus; | 25 import org.chromium.chrome.browser.ntp.snippets.CategoryStatus; |
27 import org.chromium.chrome.browser.ntp.snippets.ContentSuggestionsCardLayout; | 26 import org.chromium.chrome.browser.ntp.snippets.ContentSuggestionsCardLayout; |
28 import org.chromium.chrome.browser.ntp.snippets.KnownCategories; | 27 import org.chromium.chrome.browser.ntp.snippets.KnownCategories; |
29 import org.chromium.chrome.browser.ntp.snippets.SnippetArticle; | 28 import org.chromium.chrome.browser.ntp.snippets.SnippetArticle; |
30 import org.chromium.chrome.browser.suggestions.ContentSuggestionsAdditionalActio
n; | 29 import org.chromium.chrome.browser.suggestions.ContentSuggestionsAdditionalActio
n; |
31 import org.chromium.chrome.browser.suggestions.FakeMostVisitedSites; | 30 import org.chromium.chrome.browser.suggestions.FakeMostVisitedSites; |
32 import org.chromium.chrome.browser.suggestions.TileGroupDelegateImpl; | 31 import org.chromium.chrome.browser.suggestions.TileGroupDelegateImpl; |
| 32 import org.chromium.chrome.browser.suggestions.TileSource; |
33 import org.chromium.chrome.browser.tab.Tab; | 33 import org.chromium.chrome.browser.tab.Tab; |
34 import org.chromium.chrome.test.ChromeTabbedActivityTestBase; | 34 import org.chromium.chrome.test.ChromeTabbedActivityTestBase; |
35 import org.chromium.chrome.test.util.ChromeRestriction; | 35 import org.chromium.chrome.test.util.ChromeRestriction; |
36 import org.chromium.chrome.test.util.ChromeTabUtils; | 36 import org.chromium.chrome.test.util.ChromeTabUtils; |
37 import org.chromium.chrome.test.util.NewTabPageTestUtils; | 37 import org.chromium.chrome.test.util.NewTabPageTestUtils; |
38 import org.chromium.chrome.test.util.browser.RecyclerViewTestUtils; | 38 import org.chromium.chrome.test.util.browser.RecyclerViewTestUtils; |
39 import org.chromium.chrome.test.util.browser.suggestions.FakeSuggestionsSource; | 39 import org.chromium.chrome.test.util.browser.suggestions.FakeSuggestionsSource; |
40 import org.chromium.content.browser.test.util.TestTouchUtils; | 40 import org.chromium.content.browser.test.util.TestTouchUtils; |
41 import org.chromium.net.test.EmbeddedTestServer; | 41 import org.chromium.net.test.EmbeddedTestServer; |
42 | 42 |
43 import java.util.ArrayList; | 43 import java.util.ArrayList; |
44 import java.util.Arrays; | 44 import java.util.Arrays; |
45 import java.util.List; | 45 import java.util.List; |
46 import java.util.concurrent.TimeoutException; | 46 import java.util.concurrent.TimeoutException; |
47 | 47 |
48 /** | 48 /** |
49 * Instrumentation tests for {@link NewTabPageRecyclerView}. | 49 * Instrumentation tests for {@link NewTabPageRecyclerView}. |
50 */ | 50 */ |
51 @RetryOnFailure | 51 @RetryOnFailure |
52 public class NewTabPageRecyclerViewTest extends ChromeTabbedActivityTestBase { | 52 public class NewTabPageRecyclerViewTest extends ChromeTabbedActivityTestBase { |
53 private static final String TEST_PAGE = "/chrome/test/data/android/navigate/
simple.html"; | 53 private static final String TEST_PAGE = "/chrome/test/data/android/navigate/
simple.html"; |
54 private static final String[] FAKE_MOST_VISITED_TITLES = new String[] {"Simp
le"}; | 54 private static final String[] FAKE_MOST_VISITED_TITLES = new String[] {"Simp
le"}; |
55 private static final String[] FAKE_MOST_VISITED_WHITELIST_ICON_PATHS = new S
tring[] {""}; | 55 private static final String[] FAKE_MOST_VISITED_WHITELIST_ICON_PATHS = new S
tring[] {""}; |
56 private static final int[] FAKE_MOST_VISITED_SOURCES = new int[] {NTPTileSou
rce.TOP_SITES}; | 56 private static final int[] FAKE_MOST_VISITED_SOURCES = new int[] {TileSource
.TOP_SITES}; |
57 private static final long FAKE_PUBLISH_TIMESTAMP = 1466614774; | 57 private static final long FAKE_PUBLISH_TIMESTAMP = 1466614774; |
58 private static final long FAKE_FETCH_TIMESTAMP = 1466634774; | 58 private static final long FAKE_FETCH_TIMESTAMP = 1466634774; |
59 private static final float FAKE_SNIPPET_SCORE = 10f; | 59 private static final float FAKE_SNIPPET_SCORE = 10f; |
60 | 60 |
61 // TODO(dgn): Properly bypass the native code when testing with a fake sugge
stions source. | 61 // TODO(dgn): Properly bypass the native code when testing with a fake sugge
stions source. |
62 // We currently mix the fake and the snippets bridge, resulting in crashes w
ith unregistered | 62 // We currently mix the fake and the snippets bridge, resulting in crashes w
ith unregistered |
63 // categories. | 63 // categories. |
64 @CategoryInt | 64 @CategoryInt |
65 private static final int TEST_CATEGORY = KnownCategories.BOOKMARKS; | 65 private static final int TEST_CATEGORY = KnownCategories.BOOKMARKS; |
66 | 66 |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
409 TestTouchUtils.longClickView(getInstrumentation(), view); | 409 TestTouchUtils.longClickView(getInstrumentation(), view); |
410 assertTrue( | 410 assertTrue( |
411 getInstrumentation().invokeContextMenuAction(getActivity(), cont
extMenuItemId, 0)); | 411 getInstrumentation().invokeContextMenuAction(getActivity(), cont
extMenuItemId, 0)); |
412 } | 412 } |
413 | 413 |
414 | 414 |
415 private static void assertArrayEquals(int[] expected, int[] actual) { | 415 private static void assertArrayEquals(int[] expected, int[] actual) { |
416 assertEquals(Arrays.toString(expected), Arrays.toString(actual)); | 416 assertEquals(Arrays.toString(expected), Arrays.toString(actual)); |
417 } | 417 } |
418 } | 418 } |
OLD | NEW |