Commit 3ace8a34 authored by Mehran Mahmoudi's avatar Mehran Mahmoudi Committed by Commit Bot

[Paint Preview] Attempt to fix StartupPaintPreviewHelperTest

This attempts to fix this flaky/failing test by changing assertion
from checking Paint Preview is currently is showing to whether it has
ever been shown.

Bug: 1145783
Change-Id: I7d15ff6c517979684b129102d71d5f4ebaa926e9
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2545089Reviewed-by: default avatarCalder Kitagawa <ckitagawa@chromium.org>
Commit-Queue: Mehran Mahmoudi <mahmoudi@chromium.org>
Cr-Commit-Position: refs/heads/master@{#828441}
parent cd277658
...@@ -18,7 +18,6 @@ import org.chromium.base.test.params.ParameterizedCommandLineFlags; ...@@ -18,7 +18,6 @@ import org.chromium.base.test.params.ParameterizedCommandLineFlags;
import org.chromium.base.test.params.ParameterizedCommandLineFlags.Switches; import org.chromium.base.test.params.ParameterizedCommandLineFlags.Switches;
import org.chromium.base.test.util.CommandLineFlags; import org.chromium.base.test.util.CommandLineFlags;
import org.chromium.base.test.util.CriteriaHelper; import org.chromium.base.test.util.CriteriaHelper;
import org.chromium.base.test.util.DisabledTest;
import org.chromium.base.test.util.Restriction; import org.chromium.base.test.util.Restriction;
import org.chromium.chrome.browser.flags.ChromeFeatureList; import org.chromium.chrome.browser.flags.ChromeFeatureList;
import org.chromium.chrome.browser.flags.ChromeSwitches; import org.chromium.chrome.browser.flags.ChromeSwitches;
...@@ -95,7 +94,6 @@ public class StartupPaintPreviewHelperTest { ...@@ -95,7 +94,6 @@ public class StartupPaintPreviewHelperTest {
@Test @Test
@MediumTest @MediumTest
@Restriction(StartupPaintPreviewHelperTestRunner.RESTRICTION_TYPE_KEEP_ACTIVITIES) @Restriction(StartupPaintPreviewHelperTestRunner.RESTRICTION_TYPE_KEEP_ACTIVITIES)
@DisabledTest(message = "https://crbug.com/1145783")
public void testDisplayOnStartup() throws ExecutionException { public void testDisplayOnStartup() throws ExecutionException {
mActivityTestRule.startMainActivityWithURL( mActivityTestRule.startMainActivityWithURL(
mActivityTestRule.getTestServer().getURL(TEST_URL)); mActivityTestRule.getTestServer().getURL(TEST_URL));
...@@ -110,7 +108,10 @@ public class StartupPaintPreviewHelperTest { ...@@ -110,7 +108,10 @@ public class StartupPaintPreviewHelperTest {
final Tab tab = mActivityTestRule.getActivity().getActivityTab(); final Tab tab = mActivityTestRule.getActivity().getActivityTab();
TabbedPaintPreview tabbedPaintPreview = TabbedPaintPreview tabbedPaintPreview =
TestThreadUtils.runOnUiThreadBlocking(() -> TabbedPaintPreview.get(tab)); TestThreadUtils.runOnUiThreadBlocking(() -> TabbedPaintPreview.get(tab));
TabbedPaintPreviewTest.assertAttachedAndShown(tabbedPaintPreview, true, true);
// Paint Preview might be showed and get removed before we can assert it's showing. Hence,
// we assert that is was *ever* shown for this tab, instead.
TabbedPaintPreviewTest.assertWasEverShown(tabbedPaintPreview, true);
// Closing the tab should delete its captured paint preview. // Closing the tab should delete its captured paint preview.
TestThreadUtils.runOnUiThreadBlocking(() TestThreadUtils.runOnUiThreadBlocking(()
......
...@@ -48,6 +48,7 @@ public class TabbedPaintPreview implements UserData { ...@@ -48,6 +48,7 @@ public class TabbedPaintPreview implements UserData {
private int mPersistentToolbarToken = TokenHolder.INVALID_TOKEN; private int mPersistentToolbarToken = TokenHolder.INVALID_TOKEN;
private static PaintPreviewTabService sPaintPreviewTabServiceForTesting; private static PaintPreviewTabService sPaintPreviewTabServiceForTesting;
private boolean mWasEverShown;
public static TabbedPaintPreview get(Tab tab) { public static TabbedPaintPreview get(Tab tab) {
if (tab.getUserDataHost().getUserData(USER_DATA_KEY) == null) { if (tab.getUserDataHost().getUserData(USER_DATA_KEY) == null) {
...@@ -114,6 +115,7 @@ public class TabbedPaintPreview implements UserData { ...@@ -114,6 +115,7 @@ public class TabbedPaintPreview implements UserData {
/*ignoreInitialScrollOffset=*/false); /*ignoreInitialScrollOffset=*/false);
mTab.getTabViewManager().addTabViewProvider(mTabbedPainPreviewViewProvider); mTab.getTabViewManager().addTabViewProvider(mTabbedPainPreviewViewProvider);
mIsAttachedToTab = true; mIsAttachedToTab = true;
mWasEverShown = true;
return true; return true;
} }
...@@ -217,6 +219,11 @@ public class TabbedPaintPreview implements UserData { ...@@ -217,6 +219,11 @@ public class TabbedPaintPreview implements UserData {
sPaintPreviewTabServiceForTesting = service; sPaintPreviewTabServiceForTesting = service;
} }
@VisibleForTesting
boolean wasEverShown() {
return mWasEverShown;
}
@VisibleForTesting @VisibleForTesting
View getViewForTesting() { View getViewForTesting() {
return mTabbedPainPreviewViewProvider.getView(); return mTabbedPainPreviewViewProvider.getView();
......
...@@ -253,6 +253,14 @@ public class TabbedPaintPreviewTest { ...@@ -253,6 +253,14 @@ public class TabbedPaintPreviewTest {
CriteriaHelper.pollUiThread(() -> tabbedPaintPreview.isShowing() == shown, shownMessage); CriteriaHelper.pollUiThread(() -> tabbedPaintPreview.isShowing() == shown, shownMessage);
} }
public static void assertWasEverShown(
TabbedPaintPreview tabbedPaintPreview, boolean everShown) {
String shownMessage = everShown ? "Paint Preview should was never shown."
: "Paint Preview should was shown.";
CriteriaHelper.pollUiThread(
() -> tabbedPaintPreview.wasEverShown() == everShown, shownMessage);
}
private static class TestControlsVisibilityDelegate private static class TestControlsVisibilityDelegate
extends BrowserStateBrowserControlsVisibilityDelegate { extends BrowserStateBrowserControlsVisibilityDelegate {
private int mLastToken = TokenHolder.INVALID_TOKEN; private int mLastToken = TokenHolder.INVALID_TOKEN;
......
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