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

Unified Diff: chrome/android/javatests/src/org/chromium/chrome/browser/TabTest.java

Issue 1001573003: [Android] Stop hiding the RWHV layer subtree when hiding the widget (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Add test Created 5 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: chrome/android/javatests/src/org/chromium/chrome/browser/TabTest.java
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/TabTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/TabTest.java
index 512c639a4bf94d146ad0592542d5ad94bbe53589..22e8b3c2c09d9bf15de27d427c49b1335cb30468 100644
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/TabTest.java
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/TabTest.java
@@ -6,7 +6,9 @@ package org.chromium.chrome.browser;
import android.test.suitebuilder.annotation.SmallTest;
+import org.chromium.base.ThreadUtils;
import org.chromium.base.test.util.Feature;
+import org.chromium.chrome.browser.tabmodel.TabModel.TabSelectionType;
import org.chromium.chrome.shell.ChromeShellTestBase;
import org.chromium.content.browser.test.util.CallbackHelper;
@@ -48,4 +50,51 @@ public class TabTest extends ChromeShellTestBase {
mOnTitleUpdatedHelper.waitForCallback(currentCallCount);
assertEquals("title does not update", newTitle, mTab.getTitle());
}
+
+ @SmallTest
+ @Feature({"Tab"})
+ public void testTabRestoredIfKilledWhileActivityStopped() {
+ launchChromeShellWithBlankPage();
+ final Tab tab = getActivity().getActiveTab();
+
+ // Ensure the tab is showing before stopping the activity.
+ ThreadUtils.runOnUiThreadBlocking(new Runnable() {
+ @Override
+ public void run() {
+ tab.show(TabSelectionType.FROM_NEW);
+ }
+ });
+
+ assertFalse(tab.needsReload());
+ assertFalse(tab.isHidden());
+ assertFalse(tab.isShowingSadTab());
+
+ // Stop the activity and simulate a killed renderer.
+ ThreadUtils.runOnUiThreadBlocking(new Runnable() {
+ @Override
+ public void run() {
+ getInstrumentation().callActivityOnPause(getActivity());
+ getInstrumentation().callActivityOnStop(getActivity());
+ tab.simulateRendererKilledForTesting(false);
+ }
+ });
+
+ assertTrue(tab.needsReload());
+ assertFalse(tab.isHidden());
+ assertFalse(tab.isShowingSadTab());
+
+ // Resume the activity.
+ ThreadUtils.runOnUiThreadBlocking(new Runnable() {
+ @Override
+ public void run() {
+ getInstrumentation().callActivityOnStart(getActivity());
+ getInstrumentation().callActivityOnResume(getActivity());
+ }
+ });
+
+ // The tab should be restored and visible.
+ assertFalse(tab.isHidden());
+ assertFalse(tab.needsReload());
+ assertFalse(tab.isShowingSadTab());
+ }
}

Powered by Google App Engine
This is Rietveld 408576698