Commit 0878a79a authored by Theresa's avatar Theresa Committed by Commit Bot

Add tests for the simplified NTP shortcuts on Android

BUG=841928

Change-Id: I3ca67c780818d360d93830c0507734edba401a6e
Reviewed-on: https://chromium-review.googlesource.com/1089993Reviewed-by: default avatarBecky Zhou <huayinz@chromium.org>
Commit-Queue: Theresa <twellington@chromium.org>
Cr-Commit-Position: refs/heads/master@{#565333}
parent 5571101d
...@@ -8,6 +8,9 @@ import static android.support.test.espresso.Espresso.onView; ...@@ -8,6 +8,9 @@ import static android.support.test.espresso.Espresso.onView;
import static android.support.test.espresso.action.ViewActions.click; import static android.support.test.espresso.action.ViewActions.click;
import static android.support.test.espresso.matcher.ViewMatchers.withId; import static android.support.test.espresso.matcher.ViewMatchers.withId;
import android.app.Activity;
import android.app.Instrumentation;
import android.app.Instrumentation.ActivityMonitor;
import android.graphics.Canvas; import android.graphics.Canvas;
import android.support.test.InstrumentationRegistry; import android.support.test.InstrumentationRegistry;
import android.support.test.filters.LargeTest; import android.support.test.filters.LargeTest;
...@@ -35,11 +38,14 @@ import org.chromium.base.test.util.CommandLineFlags; ...@@ -35,11 +38,14 @@ import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.DisableIf; import org.chromium.base.test.util.DisableIf;
import org.chromium.base.test.util.DisabledTest; import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Feature; import org.chromium.base.test.util.Feature;
import org.chromium.base.test.util.Restriction;
import org.chromium.base.test.util.RetryOnFailure; import org.chromium.base.test.util.RetryOnFailure;
import org.chromium.chrome.R; import org.chromium.chrome.R;
import org.chromium.chrome.browser.ChromeFeatureList; import org.chromium.chrome.browser.ChromeFeatureList;
import org.chromium.chrome.browser.ChromeSwitches; import org.chromium.chrome.browser.ChromeSwitches;
import org.chromium.chrome.browser.UrlConstants; import org.chromium.chrome.browser.UrlConstants;
import org.chromium.chrome.browser.bookmarks.BookmarkActivity;
import org.chromium.chrome.browser.download.DownloadActivity;
import org.chromium.chrome.browser.ntp.cards.NewTabPageAdapter; import org.chromium.chrome.browser.ntp.cards.NewTabPageAdapter;
import org.chromium.chrome.browser.ntp.cards.NewTabPageRecyclerView; import org.chromium.chrome.browser.ntp.cards.NewTabPageRecyclerView;
import org.chromium.chrome.browser.ntp.cards.SignInPromo; import org.chromium.chrome.browser.ntp.cards.SignInPromo;
...@@ -78,6 +84,7 @@ import org.chromium.net.test.EmbeddedTestServer; ...@@ -78,6 +84,7 @@ import org.chromium.net.test.EmbeddedTestServer;
import org.chromium.net.test.util.TestWebServer; import org.chromium.net.test.util.TestWebServer;
import org.chromium.policy.test.annotations.Policies; import org.chromium.policy.test.annotations.Policies;
import org.chromium.ui.base.PageTransition; import org.chromium.ui.base.PageTransition;
import org.chromium.ui.test.util.UiRestriction;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -112,6 +119,7 @@ public class NewTabPageTest { ...@@ -112,6 +119,7 @@ public class NewTabPageTest {
private ChromeModernDesign.Processor mChromeModernProcessor = private ChromeModernDesign.Processor mChromeModernProcessor =
new ChromeModernDesign.Processor(); new ChromeModernDesign.Processor();
/** Parameter provider for enabling/disabling Chrome Modern. */
public static class ModernParams implements ParameterProvider { public static class ModernParams implements ParameterProvider {
@Override @Override
public Iterable<ParameterSet> getParameters() { public Iterable<ParameterSet> getParameters() {
...@@ -220,6 +228,42 @@ public class NewTabPageTest { ...@@ -220,6 +228,42 @@ public class NewTabPageTest {
mRenderTestRule.render(mNtp.getView().getRootView(), "simplified_new_tab_page"); mRenderTestRule.render(mNtp.getView().getRootView(), "simplified_new_tab_page");
} }
@Test
@MediumTest
@Feature({"NewTabPage"})
@EnableFeatures({ChromeFeatureList.SIMPLIFIED_NTP})
@Restriction(UiRestriction.RESTRICTION_TYPE_PHONE)
public void testSimplifiedNtp_BookmarksShortcuts() {
ActivityMonitor activityMonitor = InstrumentationRegistry.getInstrumentation().addMonitor(
BookmarkActivity.class.getName(),
new Instrumentation.ActivityResult(Activity.RESULT_OK, null), true);
ThreadUtils.runOnUiThreadBlocking(() -> {
View button = mNtp.getView().findViewById(R.id.bookmarks_button);
button.performClick();
});
Assert.assertEquals(1, activityMonitor.getHits());
}
@Test
@MediumTest
@Feature({"NewTabPage"})
@EnableFeatures({ChromeFeatureList.SIMPLIFIED_NTP})
@Restriction(UiRestriction.RESTRICTION_TYPE_PHONE)
public void testSimplifiedNtp_DownloadsShortcuts() {
ActivityMonitor activityMonitor = InstrumentationRegistry.getInstrumentation().addMonitor(
DownloadActivity.class.getName(),
new Instrumentation.ActivityResult(Activity.RESULT_OK, null), true);
ThreadUtils.runOnUiThreadBlocking(() -> {
View button = mNtp.getView().findViewById(R.id.downloads_button);
button.performClick();
});
Assert.assertEquals(1, activityMonitor.getHits());
}
@Test @Test
@MediumTest @MediumTest
@Feature({"NewTabPage"}) @Feature({"NewTabPage"})
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment