OLD | NEW |
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.customtabs; | 5 package org.chromium.chrome.browser.customtabs; |
6 | 6 |
7 import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_E
ND_DEVICE; | 7 import static org.chromium.base.test.util.Restriction.RESTRICTION_TYPE_NON_LOW_E
ND_DEVICE; |
8 | 8 |
9 import android.app.Activity; | 9 import android.app.Activity; |
10 import android.app.Application; | 10 import android.app.Application; |
(...skipping 1074 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1085 Context context = getInstrumentation().getTargetContext().getApplication
Context(); | 1085 Context context = getInstrumentation().getTargetContext().getApplication
Context(); |
1086 final CustomTabsConnection connection = warmUpAndWait(); | 1086 final CustomTabsConnection connection = warmUpAndWait(); |
1087 CustomTabsSessionToken token = CustomTabsSessionToken.createDummySession
TokenForTesting(); | 1087 CustomTabsSessionToken token = CustomTabsSessionToken.createDummySession
TokenForTesting(); |
1088 connection.newSession(token); | 1088 connection.newSession(token); |
1089 try { | 1089 try { |
1090 startCustomTabActivityWithIntent( | 1090 startCustomTabActivityWithIntent( |
1091 CustomTabsTestUtils.createMinimalCustomTabIntent(context, mT
estPage)); | 1091 CustomTabsTestUtils.createMinimalCustomTabIntent(context, mT
estPage)); |
1092 } catch (InterruptedException e) { | 1092 } catch (InterruptedException e) { |
1093 fail(); | 1093 fail(); |
1094 } | 1094 } |
1095 ThreadUtils.runOnUiThreadBlocking(new Runnable() { | 1095 assertFalse( |
1096 @Override | 1096 "Warmup() should have allocated a child connection", |
1097 public void run() { | 1097 mActivity.shouldAllocateChildConnection()); |
1098 assertFalse("Warmup() should have allocated a child connection", | |
1099 mActivity.shouldAllocateChildConnection()); | |
1100 } | |
1101 }); | |
1102 } | 1098 } |
1103 | 1099 |
1104 /** | 1100 /** |
1105 * Tests that the activity knows there is no child process. | 1101 * Tests that the activity knows there is no child process. |
1106 */ | 1102 */ |
1107 @SmallTest | 1103 @SmallTest |
1108 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) | 1104 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) |
1109 public void testAllocateChildConnectionNoWarmup() throws Exception { | 1105 public void testAllocateChildConnectionNoWarmup() throws Exception { |
1110 Context context = getInstrumentation().getTargetContext().getApplication
Context(); | 1106 Context context = getInstrumentation().getTargetContext().getApplication
Context(); |
1111 final CustomTabsConnection connection = | 1107 final CustomTabsConnection connection = |
1112 CustomTabsConnection.getInstance((Application) context); | 1108 CustomTabsConnection.getInstance((Application) context); |
1113 CustomTabsSessionToken token = CustomTabsSessionToken.createDummySession
TokenForTesting(); | 1109 CustomTabsSessionToken token = CustomTabsSessionToken.createDummySession
TokenForTesting(); |
1114 connection.newSession(token); | 1110 connection.newSession(token); |
1115 | 1111 |
1116 try { | 1112 try { |
1117 startCustomTabActivityWithIntent( | 1113 startCustomTabActivityWithIntent( |
1118 CustomTabsTestUtils.createMinimalCustomTabIntent(context, mT
estPage2)); | 1114 CustomTabsTestUtils.createMinimalCustomTabIntent(context, mT
estPage2)); |
1119 } catch (InterruptedException e) { | 1115 } catch (InterruptedException e) { |
1120 fail(); | 1116 fail(); |
1121 } | 1117 } |
1122 ThreadUtils.runOnUiThreadBlocking(new Runnable() { | 1118 assertTrue( |
1123 @Override | 1119 "No spare renderer available, should allocate a child connection
.", |
1124 public void run() { | 1120 mActivity.shouldAllocateChildConnection()); |
1125 assertTrue("No spare renderer available, should allocate a child
connection.", | |
1126 mActivity.shouldAllocateChildConnection()); | |
1127 } | |
1128 }); | |
1129 } | 1121 } |
1130 | 1122 |
1131 /** | 1123 /** |
1132 * Tests that the activity knows there is already a child process when prere
ndering. | 1124 * Tests that the activity knows there is already a child process when prere
ndering. |
1133 */ | 1125 */ |
1134 @SmallTest | 1126 @SmallTest |
1135 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) | 1127 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) |
1136 public void testAllocateChildConnectionWithPrerender() throws Exception { | 1128 public void testAllocateChildConnectionWithPrerender() throws Exception { |
1137 Context context = getInstrumentation().getTargetContext().getApplication
Context(); | 1129 Context context = getInstrumentation().getTargetContext().getApplication
Context(); |
1138 final CustomTabsConnection connection = warmUpAndWait(); | 1130 final CustomTabsConnection connection = warmUpAndWait(); |
1139 CustomTabsSessionToken token = CustomTabsSessionToken.createDummySession
TokenForTesting(); | 1131 CustomTabsSessionToken token = CustomTabsSessionToken.createDummySession
TokenForTesting(); |
1140 connection.newSession(token); | 1132 connection.newSession(token); |
1141 assertTrue(connection.mayLaunchUrl(token, Uri.parse(mTestPage), null, nu
ll)); | 1133 assertTrue(connection.mayLaunchUrl(token, Uri.parse(mTestPage), null, nu
ll)); |
1142 try { | 1134 try { |
1143 startCustomTabActivityWithIntent( | 1135 startCustomTabActivityWithIntent( |
1144 CustomTabsTestUtils.createMinimalCustomTabIntent(context, mT
estPage)); | 1136 CustomTabsTestUtils.createMinimalCustomTabIntent(context, mT
estPage)); |
1145 } catch (InterruptedException e) { | 1137 } catch (InterruptedException e) { |
1146 fail(); | 1138 fail(); |
1147 } | 1139 } |
1148 ThreadUtils.runOnUiThreadBlocking(new Runnable() { | 1140 assertFalse( |
1149 @Override | 1141 "Prerendering should have allocated a child connection", |
1150 public void run() { | 1142 mActivity.shouldAllocateChildConnection()); |
1151 assertFalse("Prerendering should have allocated a child connecti
on", | |
1152 mActivity.shouldAllocateChildConnection()); | |
1153 } | |
1154 }); | |
1155 } | 1143 } |
1156 | 1144 |
1157 /** | 1145 /** |
1158 * Tests that prerendering accepts a referrer, and that this is not lost whe
n launching the | 1146 * Tests that prerendering accepts a referrer, and that this is not lost whe
n launching the |
1159 * Custom Tab. | 1147 * Custom Tab. |
1160 */ | 1148 */ |
1161 @SmallTest | 1149 @SmallTest |
1162 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) | 1150 @Restriction(RESTRICTION_TYPE_NON_LOW_END_DEVICE) |
1163 public void testPrerenderingWithReferrer() throws Exception { | 1151 public void testPrerenderingWithReferrer() throws Exception { |
1164 String referrer = "android-app://com.foo.me/"; | 1152 String referrer = "android-app://com.foo.me/"; |
(...skipping 379 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1544 if (jsonText.equalsIgnoreCase("null")) jsonText = ""; | 1532 if (jsonText.equalsIgnoreCase("null")) jsonText = ""; |
1545 value = jsonText; | 1533 value = jsonText; |
1546 } catch (InterruptedException | TimeoutException e) { | 1534 } catch (InterruptedException | TimeoutException e) { |
1547 e.printStackTrace(); | 1535 e.printStackTrace(); |
1548 return false; | 1536 return false; |
1549 } | 1537 } |
1550 return TextUtils.equals(mExpected, value); | 1538 return TextUtils.equals(mExpected, value); |
1551 } | 1539 } |
1552 } | 1540 } |
1553 } | 1541 } |
OLD | NEW |