Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(64)

Side by Side Diff: chrome/android/javatests/src/org/chromium/chrome/browser/ntp/NewTabPageTest.java

Issue 2651673010: 🍝🏠 Refactor MostVisited UI management, extract it for reuse in Home. (Closed)
Patch Set: Rebase. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 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; 5 package org.chromium.chrome.browser.ntp;
6 6
7 import android.graphics.Canvas; 7 import android.graphics.Canvas;
8 import android.support.test.filters.LargeTest; 8 import android.support.test.filters.LargeTest;
9 import android.support.test.filters.MediumTest; 9 import android.support.test.filters.MediumTest;
10 import android.support.test.filters.SmallTest; 10 import android.support.test.filters.SmallTest;
11 import android.test.UiThreadTest; 11 import android.test.UiThreadTest;
12 import android.view.KeyEvent; 12 import android.view.KeyEvent;
13 import android.view.View; 13 import android.view.View;
14 import android.view.ViewGroup; 14 import android.view.ViewGroup;
15 15
16 import org.chromium.base.ThreadUtils; 16 import org.chromium.base.ThreadUtils;
17 import org.chromium.base.test.util.CallbackHelper; 17 import org.chromium.base.test.util.CallbackHelper;
18 import org.chromium.base.test.util.CommandLineFlags; 18 import org.chromium.base.test.util.CommandLineFlags;
19 import org.chromium.base.test.util.DisableIf; 19 import org.chromium.base.test.util.DisableIf;
20 import org.chromium.base.test.util.DisabledTest; 20 import org.chromium.base.test.util.DisabledTest;
21 import org.chromium.base.test.util.Feature; 21 import org.chromium.base.test.util.Feature;
22 import org.chromium.base.test.util.RetryOnFailure; 22 import org.chromium.base.test.util.RetryOnFailure;
23 import org.chromium.chrome.R; 23 import org.chromium.chrome.R;
24 import org.chromium.chrome.browser.UrlConstants; 24 import org.chromium.chrome.browser.UrlConstants;
25 import org.chromium.chrome.browser.ntp.cards.NewTabPageRecyclerView; 25 import org.chromium.chrome.browser.ntp.cards.NewTabPageRecyclerView;
26 import org.chromium.chrome.browser.omnibox.LocationBarLayout; 26 import org.chromium.chrome.browser.omnibox.LocationBarLayout;
27 import org.chromium.chrome.browser.omnibox.UrlBar; 27 import org.chromium.chrome.browser.omnibox.UrlBar;
28 import org.chromium.chrome.browser.suggestions.TileGroupDelegateImpl;
28 import org.chromium.chrome.browser.tab.EmptyTabObserver; 29 import org.chromium.chrome.browser.tab.EmptyTabObserver;
29 import org.chromium.chrome.browser.tab.Tab; 30 import org.chromium.chrome.browser.tab.Tab;
30 import org.chromium.chrome.test.ChromeTabbedActivityTestBase; 31 import org.chromium.chrome.test.ChromeTabbedActivityTestBase;
31 import org.chromium.chrome.test.util.ChromeTabUtils; 32 import org.chromium.chrome.test.util.ChromeTabUtils;
32 import org.chromium.chrome.test.util.NewTabPageTestUtils; 33 import org.chromium.chrome.test.util.NewTabPageTestUtils;
33 import org.chromium.chrome.test.util.OmniboxTestUtils; 34 import org.chromium.chrome.test.util.OmniboxTestUtils;
34 import org.chromium.chrome.test.util.RenderUtils.ViewRenderer; 35 import org.chromium.chrome.test.util.RenderUtils.ViewRenderer;
35 import org.chromium.content.browser.test.util.Criteria; 36 import org.chromium.content.browser.test.util.Criteria;
36 import org.chromium.content.browser.test.util.CriteriaHelper; 37 import org.chromium.content.browser.test.util.CriteriaHelper;
37 import org.chromium.content.browser.test.util.KeyUtils; 38 import org.chromium.content.browser.test.util.KeyUtils;
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
92 // Create FakeMostVisitedSites after starting the activity, since it depends on 93 // Create FakeMostVisitedSites after starting the activity, since it depends on
93 // native code. 94 // native code.
94 mFakeMostVisitedSites = new FakeMostVisitedSites(mTab.getPro file(), 95 mFakeMostVisitedSites = new FakeMostVisitedSites(mTab.getPro file(),
95 FAKE_MOST_VISITED_TITLES, mFakeMostVisitedUrls, 96 FAKE_MOST_VISITED_TITLES, mFakeMostVisitedUrls,
96 FAKE_MOST_VISITED_WHITELIST_ICON_PATHS, FAKE_MOST_VI SITED_SOURCES); 97 FAKE_MOST_VISITED_WHITELIST_ICON_PATHS, FAKE_MOST_VI SITED_SOURCES);
97 } 98 }
98 }); 99 });
99 } catch (Throwable t) { 100 } catch (Throwable t) {
100 fail(t.getMessage()); 101 fail(t.getMessage());
101 } 102 }
102 NewTabPage.setMostVisitedSitesForTests(mFakeMostVisitedSites); 103 TileGroupDelegateImpl.setMostVisitedSitesForTests(mFakeMostVisitedSites) ;
103 104
104 loadUrl(UrlConstants.NTP_URL); 105 loadUrl(UrlConstants.NTP_URL);
105 NewTabPageTestUtils.waitForNtpLoaded(mTab); 106 NewTabPageTestUtils.waitForNtpLoaded(mTab);
106 107
107 assertTrue(mTab.getNativePage() instanceof NewTabPage); 108 assertTrue(mTab.getNativePage() instanceof NewTabPage);
108 mNtp = (NewTabPage) mTab.getNativePage(); 109 mNtp = (NewTabPage) mTab.getNativePage();
109 mFakebox = mNtp.getView().findViewById(R.id.search_box); 110 mFakebox = mNtp.getView().findViewById(R.id.search_box);
110 mMostVisitedLayout = (ViewGroup) mNtp.getView().findViewById(R.id.most_v isited_layout); 111 mMostVisitedLayout = (ViewGroup) mNtp.getView().findViewById(R.id.most_v isited_layout);
111 assertEquals(mFakeMostVisitedUrls.length, mMostVisitedLayout.getChildCou nt()); 112 assertEquals(mFakeMostVisitedUrls.length, mMostVisitedLayout.getChildCou nt());
112 } 113 }
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after
413 414
414 private void waitForTabLoading() { 415 private void waitForTabLoading() {
415 CriteriaHelper.pollUiThread(new Criteria() { 416 CriteriaHelper.pollUiThread(new Criteria() {
416 @Override 417 @Override
417 public boolean isSatisfied() { 418 public boolean isSatisfied() {
418 return mTab.isLoading(); 419 return mTab.isLoading();
419 } 420 }
420 }); 421 });
421 } 422 }
422 423
423 private void waitForFakeboxFocusAnimationComplete(NewTabPage ntp) throws Int erruptedException { 424 private void waitForFakeboxFocusAnimationComplete(NewTabPage ntp) {
424 waitForUrlFocusPercent(ntp, 1f); 425 waitForUrlFocusPercent(ntp, 1f);
425 } 426 }
426 427
427 private void waitForUrlFocusPercent(final NewTabPage ntp, float percent) { 428 private void waitForUrlFocusPercent(final NewTabPage ntp, float percent) {
428 CriteriaHelper.pollUiThread(Criteria.equals(percent, new Callable<Float> () { 429 CriteriaHelper.pollUiThread(Criteria.equals(percent, new Callable<Float> () {
429 @Override 430 @Override
430 public Float call() { 431 public Float call() {
431 return ntp.getNewTabPageView().getUrlFocusChangeAnimationPercent (); 432 return ntp.getNewTabPageView().getUrlFocusChangeAnimationPercent ();
432 } 433 }
433 })); 434 }));
(...skipping 24 matching lines...) Expand all
458 */ 459 */
459 private void waitForFakeboxTopPosition(final NewTabPage ntp, int position) { 460 private void waitForFakeboxTopPosition(final NewTabPage ntp, int position) {
460 CriteriaHelper.pollUiThread(Criteria.equals(position, new Callable<Integ er>() { 461 CriteriaHelper.pollUiThread(Criteria.equals(position, new Callable<Integ er>() {
461 @Override 462 @Override
462 public Integer call() { 463 public Integer call() {
463 return getFakeboxTop(ntp); 464 return getFakeboxTop(ntp);
464 } 465 }
465 })); 466 }));
466 } 467 }
467 } 468 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698