Index: chrome/android/javatests/src/org/chromium/chrome/browser/SmartClipProviderTest.java |
diff --git a/chrome/android/javatests/src/org/chromium/chrome/browser/SmartClipProviderTest.java b/chrome/android/javatests/src/org/chromium/chrome/browser/SmartClipProviderTest.java |
index 66b84d65b79866884ea8750ad4b9b22b3d015595..74e29521707db24c641f53e2c5fcac1b6dc7e33a 100644 |
--- a/chrome/android/javatests/src/org/chromium/chrome/browser/SmartClipProviderTest.java |
+++ b/chrome/android/javatests/src/org/chromium/chrome/browser/SmartClipProviderTest.java |
@@ -17,20 +17,11 @@ |
import android.view.View; |
import android.view.ViewGroup; |
-import org.junit.After; |
-import org.junit.Assert; |
-import org.junit.Before; |
-import org.junit.Rule; |
-import org.junit.Test; |
-import org.junit.runner.RunWith; |
- |
import org.chromium.base.ThreadUtils; |
import org.chromium.base.test.util.CallbackHelper; |
-import org.chromium.base.test.util.CommandLineFlags; |
import org.chromium.base.test.util.Feature; |
import org.chromium.base.test.util.RetryOnFailure; |
-import org.chromium.chrome.test.ChromeActivityTestRule; |
-import org.chromium.chrome.test.ChromeJUnit4ClassRunner; |
+import org.chromium.chrome.test.ChromeActivityTestCaseBase; |
import java.lang.reflect.Method; |
import java.util.concurrent.TimeoutException; |
@@ -38,18 +29,11 @@ |
/** |
* Tests for the SmartClipProvider. |
*/ |
-@RunWith(ChromeJUnit4ClassRunner.class) |
-@CommandLineFlags.Add({ChromeSwitches.DISABLE_FIRST_RUN_EXPERIENCE, |
- ChromeActivityTestRule.DISABLE_NETWORK_PREDICTION_FLAG}) |
-public class SmartClipProviderTest implements Handler.Callback { |
+public class SmartClipProviderTest |
+ extends ChromeActivityTestCaseBase<ChromeActivity> implements Handler.Callback { |
// This is a key for meta-data in the package manifest. It should NOT |
// change, as OEMs will use it when they look for the SmartClipProvider |
// interface. |
- |
- @Rule |
- public ChromeActivityTestRule<ChromeActivity> mActivityTestRule = |
- new ChromeActivityTestRule<>(ChromeActivity.class); |
- |
private static final String SMART_CLIP_PROVIDER_KEY = |
"org.chromium.content.browser.SMART_CLIP_PROVIDER"; |
@@ -98,17 +82,26 @@ |
private Method mSetSmartClipResultHandlerMethod; |
private Method mExtractSmartClipDataMethod; |
- @Before |
+ public SmartClipProviderTest() { |
+ super(ChromeActivity.class); |
+ } |
+ |
+ @Override |
+ public void startMainActivity() throws InterruptedException { |
+ startMainActivityOnBlankPage(); |
+ } |
+ |
+ @Override |
public void setUp() throws Exception { |
- mActivityTestRule.startMainActivityOnBlankPage(); |
- mActivity = mActivityTestRule.getActivity(); |
+ super.setUp(); |
+ mActivity = getActivity(); |
mCallbackHelper = new MyCallbackHelper(); |
mHandlerThread = new HandlerThread("ContentViewTest thread"); |
mHandlerThread.start(); |
mHandler = new Handler(mHandlerThread.getLooper(), this); |
mSmartClipProviderClass = getSmartClipProviderClass(); |
- Assert.assertNotNull(mSmartClipProviderClass); |
+ assertNotNull(mSmartClipProviderClass); |
mSetSmartClipResultHandlerMethod = mSmartClipProviderClass.getDeclaredMethod( |
"setSmartClipResultHandler", new Class[] { Handler.class }); |
mExtractSmartClipDataMethod = mSmartClipProviderClass.getDeclaredMethod( |
@@ -116,13 +109,17 @@ |
new Class[] { Integer.TYPE, Integer.TYPE, Integer.TYPE, Integer.TYPE }); |
} |
- @After |
@TargetApi(Build.VERSION_CODES.JELLY_BEAN_MR2) |
+ @Override |
public void tearDown() throws Exception { |
- if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { |
- mHandlerThread.quitSafely(); |
- } else { |
- mHandlerThread.quit(); |
+ try { |
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { |
+ mHandlerThread.quitSafely(); |
+ } else { |
+ mHandlerThread.quit(); |
+ } |
+ } finally { |
+ super.tearDown(); |
} |
} |
@@ -130,7 +127,7 @@ |
@Override |
public boolean handleMessage(Message msg) { |
Bundle bundle = msg.getData(); |
- Assert.assertNotNull(bundle); |
+ assertNotNull(bundle); |
String url = bundle.getString("url"); |
String title = bundle.getString("title"); |
String text = bundle.getString("text"); |
@@ -147,7 +144,7 @@ |
mActivity.getPackageName(), PackageManager.GET_META_DATA); |
Bundle bundle = ai.metaData; |
String className = bundle.getString(SMART_CLIP_PROVIDER_KEY); |
- Assert.assertNotNull(className); |
+ assertNotNull(className); |
return Class.forName(className); |
} |
@@ -167,7 +164,6 @@ |
return null; |
} |
- @Test |
@MediumTest |
@Feature({"SmartClip"}) |
@RetryOnFailure |
@@ -179,32 +175,31 @@ |
// This emulates what OEM will be doing when they want to call |
// functions on SmartClipProvider through view hierarchy. |
- Object scp = findSmartClipProvider( |
- mActivityTestRule.getActivity().findViewById(android.R.id.content)); |
- Assert.assertNotNull(scp); |
+ Object scp = |
+ findSmartClipProvider(getActivity().findViewById(android.R.id.content)); |
+ assertNotNull(scp); |
try { |
mSetSmartClipResultHandlerMethod.invoke(scp, mHandler); |
mExtractSmartClipDataMethod.invoke( |
scp, rect.left, rect.top, rect.width(), rect.height()); |
} catch (Exception e) { |
e.printStackTrace(); |
- Assert.fail(); |
+ fail(); |
} |
} |
}); |
mCallbackHelper.waitForCallback(0, 1); // call count: 0 --> 1 |
- Assert.assertEquals("about:blank", mCallbackHelper.getTitle()); |
- Assert.assertEquals("about:blank", mCallbackHelper.getUrl()); |
- Assert.assertNotNull(mCallbackHelper.getText()); |
- Assert.assertNotNull(mCallbackHelper.getHtml()); |
- Assert.assertNotNull(mCallbackHelper.getRect()); |
- Assert.assertEquals(rect.left, mCallbackHelper.getRect().left); |
- Assert.assertEquals(rect.top, mCallbackHelper.getRect().top); |
- Assert.assertEquals(rect.width(), mCallbackHelper.getRect().width()); |
- Assert.assertEquals(rect.height(), mCallbackHelper.getRect().height()); |
- } |
- |
- @Test |
+ assertEquals("about:blank", mCallbackHelper.getTitle()); |
+ assertEquals("about:blank", mCallbackHelper.getUrl()); |
+ assertNotNull(mCallbackHelper.getText()); |
+ assertNotNull(mCallbackHelper.getHtml()); |
+ assertNotNull(mCallbackHelper.getRect()); |
+ assertEquals(rect.left, mCallbackHelper.getRect().left); |
+ assertEquals(rect.top, mCallbackHelper.getRect().top); |
+ assertEquals(rect.width(), mCallbackHelper.getRect().width()); |
+ assertEquals(rect.height(), mCallbackHelper.getRect().height()); |
+ } |
+ |
@MediumTest |
@Feature({"SmartClip"}) |
@RetryOnFailure |
@@ -212,9 +207,9 @@ |
ThreadUtils.runOnUiThreadBlocking(new Runnable() { |
@Override |
public void run() { |
- Object scp = findSmartClipProvider( |
- mActivityTestRule.getActivity().findViewById(android.R.id.content)); |
- Assert.assertNotNull(scp); |
+ Object scp = |
+ findSmartClipProvider(getActivity().findViewById(android.R.id.content)); |
+ assertNotNull(scp); |
try { |
// Galaxy Note 4 has a bug where it doesn't always set the handler first; in |
// that case, we shouldn't crash: http://crbug.com/710147 |
@@ -226,7 +221,7 @@ |
mExtractSmartClipDataMethod.invoke(scp, 10, 20, 100, 70); |
} catch (Exception e) { |
e.printStackTrace(); |
- Assert.fail(); |
+ fail(); |
} |
} |
}); |