| Index: chrome/android/javatests/src/org/chromium/chrome/browser/ContentViewTest.java
|
| diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/ContentViewTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/ContentViewTest.java
|
| index 20a0f0f959f38609fbed7a4a9c3a7b43f745a1da..de75d28c55d1c053e8035fd69726ed0ce7860378 100644
|
| --- a/chrome/android/javatests/src/org/chromium/chrome/browser/ContentViewTest.java
|
| +++ b/chrome/android/javatests/src/org/chromium/chrome/browser/ContentViewTest.java
|
| @@ -4,7 +4,10 @@
|
|
|
| package org.chromium.chrome.browser;
|
|
|
| -import android.graphics.Rect;
|
| +import android.os.Bundle;
|
| +import android.os.Handler;
|
| +import android.os.HandlerThread;
|
| +import android.os.Message;
|
| import android.test.suitebuilder.annotation.MediumTest;
|
|
|
| import org.chromium.base.ThreadUtils;
|
| @@ -12,7 +15,6 @@ import org.chromium.base.test.util.Feature;
|
| import org.chromium.chrome.shell.ChromeShellActivity;
|
| import org.chromium.chrome.shell.ChromeShellTestBase;
|
| import org.chromium.content.browser.ContentView;
|
| -import org.chromium.content.browser.ContentViewCore;
|
| import org.chromium.content.browser.test.util.CallbackHelper;
|
|
|
| import java.util.concurrent.TimeoutException;
|
| @@ -20,16 +22,61 @@ import java.util.concurrent.TimeoutException;
|
| /**
|
| * Tests for the ContentView.
|
| */
|
| -public class ContentViewTest extends ChromeShellTestBase {
|
| +public class ContentViewTest extends ChromeShellTestBase implements Handler.Callback {
|
| +
|
| + private static class MyCallbackHelper extends CallbackHelper {
|
| + public String getTitle() {
|
| + return mTitle;
|
| + }
|
| +
|
| + public String getUrl() {
|
| + return mUrl;
|
| + }
|
| +
|
| + public void notifyCalled(String title, String url) {
|
| + mTitle = title;
|
| + mUrl = url;
|
| + super.notifyCalled();
|
| + }
|
| +
|
| + private String mTitle;
|
| + private String mUrl;
|
| + }
|
|
|
| private ChromeShellActivity mActivity;
|
| - private CallbackHelper mCallbackHelper;
|
| + private MyCallbackHelper mCallbackHelper;
|
| + private HandlerThread mHandlerThread;
|
| + private Handler mHandler;
|
|
|
| @Override
|
| public void setUp() throws Exception {
|
| super.setUp();
|
| mActivity = launchChromeShellWithBlankPage();
|
| - mCallbackHelper = new CallbackHelper();
|
| + mCallbackHelper = new MyCallbackHelper();
|
| + mHandlerThread = new HandlerThread("ContentViewTest thread");
|
| + mHandlerThread.start();
|
| + mHandler = new Handler(mHandlerThread.getLooper(), this);
|
| + }
|
| +
|
| + @Override
|
| + public void tearDown() throws Exception {
|
| + try {
|
| + mHandlerThread.quitSafely();
|
| + } finally {
|
| + super.tearDown();
|
| + }
|
| + }
|
| +
|
| + // Implements Handler.Callback
|
| + @Override
|
| + public boolean handleMessage(Message msg) {
|
| + Bundle bundle = msg.getData();
|
| + assertNotNull(bundle);
|
| + String url = bundle.getString("url");
|
| + String title = bundle.getString("title");
|
| + // We don't care about other values for now.
|
| + mCallbackHelper.notifyCalled(title, url);
|
| + return true;
|
| }
|
|
|
| @MediumTest
|
| @@ -40,15 +87,12 @@ public class ContentViewTest extends ChromeShellTestBase {
|
| public void run() {
|
| ContentView cv = (ContentView) getActivity().getActiveTab().getView();
|
| assertNotNull(cv);
|
| - cv.setSmartClipDataListener(new ContentViewCore.SmartClipDataListener() {
|
| - public void onSmartClipDataExtracted(String result, Rect cliprect) {
|
| - // We don't care about the returned values for now.
|
| - mCallbackHelper.notifyCalled();
|
| - }
|
| - });
|
| - cv.extractSmartClipData(10, 10, 100, 100);
|
| + cv.setSmartClipResultHandler(mHandler);
|
| + cv.extractSmartClipData(10, 20, 100, 70);
|
| }
|
| });
|
| mCallbackHelper.waitForCallback(0, 1); // call count: 0 --> 1
|
| + assertNotNull("about:blank", mCallbackHelper.getTitle());
|
| + assertNotNull("about:blank", mCallbackHelper.getUrl());
|
| }
|
| }
|
|
|