OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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.android_webview.test; | 5 package org.chromium.android_webview.test; |
6 | 6 |
7 import android.graphics.Picture; | 7 import android.graphics.Picture; |
8 import android.webkit.ConsoleMessage; | 8 import android.webkit.ConsoleMessage; |
9 | 9 |
10 import org.chromium.base.ThreadUtils; | 10 import org.chromium.base.ThreadUtils; |
11 import org.chromium.content.browser.test.util.CallbackHelper; | 11 import org.chromium.content.browser.test.util.CallbackHelper; |
12 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnEval
uateJavaScriptResultHelper; | 12 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnEval
uateJavaScriptResultHelper; |
13 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnPage
FinishedHelper; | 13 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnPage
FinishedHelper; |
14 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnPage
StartedHelper; | 14 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnPage
StartedHelper; |
15 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnRece
ivedErrorHelper; | 15 import org.chromium.content.browser.test.util.TestCallbackHelperContainer.OnRece
ivedErrorHelper; |
16 | 16 |
17 class TestAwContentsClient extends NullContentsClient { | 17 class TestAwContentsClient extends NullContentsClient { |
18 private String mUpdatedTitle; | 18 private String mUpdatedTitle; |
19 private final OnPageStartedHelper mOnPageStartedHelper; | 19 private final OnPageStartedHelper mOnPageStartedHelper; |
20 private final OnPageFinishedHelper mOnPageFinishedHelper; | 20 private final OnPageFinishedHelper mOnPageFinishedHelper; |
21 private final OnReceivedErrorHelper mOnReceivedErrorHelper; | 21 private final OnReceivedErrorHelper mOnReceivedErrorHelper; |
22 private final OnEvaluateJavaScriptResultHelper mOnEvaluateJavaScriptResultHe
lper; | 22 private final OnEvaluateJavaScriptResultHelper mOnEvaluateJavaScriptResultHe
lper; |
23 private final AddMessageToConsoleHelper mAddMessageToConsoleHelper; | 23 private final AddMessageToConsoleHelper mAddMessageToConsoleHelper; |
24 private final OnScaleChangedHelper mOnScaleChangedHelper; | 24 private final OnScaleChangedHelper mOnScaleChangedHelper; |
25 private final PictureListenerHelper mPictureListenerHelper; | 25 private final PictureListenerHelper mPictureListenerHelper; |
| 26 private final ShouldOverrideUrlLoadingHelper mShouldOverrideUrlLoadingHelper
; |
26 | 27 |
27 public TestAwContentsClient() { | 28 public TestAwContentsClient() { |
28 super(ThreadUtils.getUiThreadLooper()); | 29 super(ThreadUtils.getUiThreadLooper()); |
29 mOnPageStartedHelper = new OnPageStartedHelper(); | 30 mOnPageStartedHelper = new OnPageStartedHelper(); |
30 mOnPageFinishedHelper = new OnPageFinishedHelper(); | 31 mOnPageFinishedHelper = new OnPageFinishedHelper(); |
31 mOnReceivedErrorHelper = new OnReceivedErrorHelper(); | 32 mOnReceivedErrorHelper = new OnReceivedErrorHelper(); |
32 mOnEvaluateJavaScriptResultHelper = new OnEvaluateJavaScriptResultHelper
(); | 33 mOnEvaluateJavaScriptResultHelper = new OnEvaluateJavaScriptResultHelper
(); |
33 mAddMessageToConsoleHelper = new AddMessageToConsoleHelper(); | 34 mAddMessageToConsoleHelper = new AddMessageToConsoleHelper(); |
34 mOnScaleChangedHelper = new OnScaleChangedHelper(); | 35 mOnScaleChangedHelper = new OnScaleChangedHelper(); |
35 mPictureListenerHelper = new PictureListenerHelper(); | 36 mPictureListenerHelper = new PictureListenerHelper(); |
| 37 mShouldOverrideUrlLoadingHelper = new ShouldOverrideUrlLoadingHelper(); |
36 } | 38 } |
37 | 39 |
38 public OnPageStartedHelper getOnPageStartedHelper() { | 40 public OnPageStartedHelper getOnPageStartedHelper() { |
39 return mOnPageStartedHelper; | 41 return mOnPageStartedHelper; |
40 } | 42 } |
41 | 43 |
42 public OnPageFinishedHelper getOnPageFinishedHelper() { | 44 public OnPageFinishedHelper getOnPageFinishedHelper() { |
43 return mOnPageFinishedHelper; | 45 return mOnPageFinishedHelper; |
44 } | 46 } |
45 | 47 |
46 public OnReceivedErrorHelper getOnReceivedErrorHelper() { | 48 public OnReceivedErrorHelper getOnReceivedErrorHelper() { |
47 return mOnReceivedErrorHelper; | 49 return mOnReceivedErrorHelper; |
48 } | 50 } |
49 | 51 |
50 public OnEvaluateJavaScriptResultHelper getOnEvaluateJavaScriptResultHelper(
) { | 52 public OnEvaluateJavaScriptResultHelper getOnEvaluateJavaScriptResultHelper(
) { |
51 return mOnEvaluateJavaScriptResultHelper; | 53 return mOnEvaluateJavaScriptResultHelper; |
52 } | 54 } |
53 | 55 |
| 56 public ShouldOverrideUrlLoadingHelper getShouldOverrideUrlLoadingHelper() { |
| 57 return mShouldOverrideUrlLoadingHelper; |
| 58 } |
| 59 |
54 public AddMessageToConsoleHelper getAddMessageToConsoleHelper() { | 60 public AddMessageToConsoleHelper getAddMessageToConsoleHelper() { |
55 return mAddMessageToConsoleHelper; | 61 return mAddMessageToConsoleHelper; |
56 } | 62 } |
57 | 63 |
58 public static class OnScaleChangedHelper extends CallbackHelper { | 64 public static class OnScaleChangedHelper extends CallbackHelper { |
59 private float mPreviousScale; | 65 private float mPreviousScale; |
60 private float mCurrentScale; | 66 private float mCurrentScale; |
61 public void notifyCalled(float oldScale, float newScale) { | 67 public void notifyCalled(float oldScale, float newScale) { |
62 mPreviousScale = oldScale; | 68 mPreviousScale = oldScale; |
63 mCurrentScale = newScale; | 69 mCurrentScale = newScale; |
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
160 void notifyCalled(Picture picture) { | 166 void notifyCalled(Picture picture) { |
161 mPicture = picture; | 167 mPicture = picture; |
162 notifyCalled(); | 168 notifyCalled(); |
163 } | 169 } |
164 } | 170 } |
165 | 171 |
166 @Override | 172 @Override |
167 public void onNewPicture(Picture picture) { | 173 public void onNewPicture(Picture picture) { |
168 mPictureListenerHelper.notifyCalled(picture); | 174 mPictureListenerHelper.notifyCalled(picture); |
169 } | 175 } |
| 176 |
| 177 public static class ShouldOverrideUrlLoadingHelper extends CallbackHelper { |
| 178 private String mShouldOverrideUrlLoadingUrl; |
| 179 private String mPreviousShouldOverrideUrlLoadingUrl; |
| 180 private boolean mShouldOverrideUrlLoadingReturnValue = false; |
| 181 void setShouldOverrideUrlLoadingUrl(String url) { |
| 182 mShouldOverrideUrlLoadingUrl = url; |
| 183 } |
| 184 void setPreviousShouldOverrideUrlLoadingUrl(String url) { |
| 185 mPreviousShouldOverrideUrlLoadingUrl = url; |
| 186 } |
| 187 void setShouldOverrideUrlLoadingReturnValue(boolean value) { |
| 188 mShouldOverrideUrlLoadingReturnValue = value; |
| 189 } |
| 190 public String getShouldOverrideUrlLoadingUrl() { |
| 191 assert getCallCount() > 0; |
| 192 return mShouldOverrideUrlLoadingUrl; |
| 193 } |
| 194 public String getPreviousShouldOverrideUrlLoadingUrl() { |
| 195 assert getCallCount() > 1; |
| 196 return mPreviousShouldOverrideUrlLoadingUrl; |
| 197 } |
| 198 public boolean getShouldOverrideUrlLoadingReturnValue() { |
| 199 return mShouldOverrideUrlLoadingReturnValue; |
| 200 } |
| 201 public void notifyCalled(String url) { |
| 202 mPreviousShouldOverrideUrlLoadingUrl = mShouldOverrideUrlLoadingUrl; |
| 203 mShouldOverrideUrlLoadingUrl = url; |
| 204 notifyCalled(); |
| 205 } |
| 206 } |
| 207 |
| 208 @Override |
| 209 public boolean shouldOverrideUrlLoading(String url) { |
| 210 super.shouldOverrideUrlLoading(url); |
| 211 boolean returnValue = |
| 212 mShouldOverrideUrlLoadingHelper.getShouldOverrideUrlLoadingReturnVal
ue(); |
| 213 mShouldOverrideUrlLoadingHelper.notifyCalled(url); |
| 214 return returnValue; |
| 215 } |
170 } | 216 } |
OLD | NEW |