| Index: chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabsConnectionTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabsConnectionTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabsConnectionTest.java
|
| index f7d47e18e05407f605eecb8e2be560a1fa680df2..503975dd7ccf817c29833d722ea1828f4d04231a 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabsConnectionTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/customtabs/CustomTabsConnectionTest.java
|
| @@ -146,6 +146,30 @@ public class CustomTabsConnectionTest extends InstrumentationTestCase {
|
| });
|
| }
|
|
|
| + /*
|
| + * Tests that when the disconnection notification comes from a non-UI thread, Chrome doesn't
|
| + * crash. Non-regression test for crbug.com/623128.
|
| + */
|
| + @SmallTest
|
| + @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
|
| + public void testPrerenderAndDisconnectOnOtherThread() {
|
| + final CustomTabsSessionToken token = assertWarmupAndMayLaunchUrl(null, URL, true);
|
| + final Thread otherThread = new Thread(new Runnable() {
|
| + @Override
|
| + public void run() {
|
| + mCustomTabsConnection.cleanUpSession(token);
|
| + }
|
| + });
|
| +
|
| + ThreadUtils.runOnUiThreadBlocking(new Runnable() {
|
| + @Override
|
| + public void run() {
|
| + otherThread.start();
|
| + }
|
| + });
|
| + // Should not crash, hence no assertions below.
|
| + }
|
| +
|
| @SmallTest
|
| @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE)
|
| public void testMayLaunchUrlKeepsSpareRendererWithoutPrerendering() {
|
|
|