Index: android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java |
diff --git a/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java b/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java |
index d3441f7895fed53357bb427c05a25cb8cd42eac5..bf94233c6debcaaec92b90689711702b85ed1d28 100644 |
--- a/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java |
+++ b/android/junit/src/org/chromium/base/BaseChromiumApplicationTest.java |
@@ -13,6 +13,7 @@ import android.view.KeyEvent; |
import junit.framework.Assert; |
import org.chromium.base.BaseChromiumApplication.WindowFocusChangedListener; |
+import org.chromium.base.test.shadows.ShadowMultiDex; |
import org.chromium.testing.local.LocalRobolectricTestRunner; |
import org.junit.Test; |
import org.junit.runner.RunWith; |
@@ -26,9 +27,9 @@ import org.robolectric.util.ActivityController; |
/** Unit tests for {@link BaseChromiumApplication}. */ |
@RunWith(LocalRobolectricTestRunner.class) |
@Config(manifest = Config.NONE, application = BaseChromiumApplication.class, |
- shadows = {BaseChromiumApplicationTest.TrackingShadowActivity.class}) |
+ shadows = {BaseChromiumApplicationTest.TrackingShadowActivity.class, ShadowMultiDex.class}) |
public class BaseChromiumApplicationTest { |
- |
+ /** Shadow that tracks calls to onWindowFocusChanged and dispatchKeyEvent. */ |
@Implements(Activity.class) |
public static class TrackingShadowActivity extends ShadowActivity { |
private int mWindowFocusCalls; |
@@ -65,30 +66,4 @@ public class BaseChromiumApplicationTest { |
// Also ensure that the original activity is forwarded the notification. |
Assert.assertEquals(1, shadow.mWindowFocusCalls); |
} |
- |
- @Test |
- public void testDispatchKeyEvent() throws Exception { |
- ActivityController<Activity> controller = |
- Robolectric.buildActivity(Activity.class).create().start().visible(); |
- TrackingShadowActivity shadow = |
- (TrackingShadowActivity) Robolectric.shadowOf(controller.get()); |
- |
- final KeyEvent menuKey = new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_MENU); |
- |
- // Ensure that key events are forwarded. |
- Assert.assertFalse(controller.get().getWindow().getCallback().dispatchKeyEvent(menuKey)); |
- // This gets called twice - once to see if the activity is swallowing it, and again to |
- // dispatch it. |
- Assert.assertEquals(2, shadow.mDispatchKeyEventCalls); |
- |
- // Ensure that our activity can swallow the event. |
- shadow.mReturnValueForKeyDispatch = true; |
- Assert.assertTrue(controller.get().getWindow().getCallback().dispatchKeyEvent(menuKey)); |
- Assert.assertEquals(3, shadow.mDispatchKeyEventCalls); |
- |
- // A non-enter key only dispatches once. |
- Assert.assertTrue(controller.get().getWindow().getCallback().dispatchKeyEvent( |
- new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_SPACE))); |
- Assert.assertEquals(4, shadow.mDispatchKeyEventCalls); |
- } |
} |