From a62538e05eac1c6aa0bdcc46804a46484021456c Mon Sep 17 00:00:00 2001 From: Heath Borders Date: Wed, 11 Jun 2014 09:57:15 -0500 Subject: [PATCH] Fixed android sample tests. Upgrading to robotium 4.3.1 fixed this exception (when run on a 4.4 emulator): ``` java.lang.RuntimeException: java.lang.ClassCastException: java.util.ArrayList cannot be cast to android.view.View[] at com.jayway.android.robotium.solo.Searcher.searchFor(Searcher.java:127) at com.jayway.android.robotium.solo.Waiter.waitForText(Waiter.java:383) at com.jayway.android.robotium.solo.Clicker.clickOn(Clicker.java:352) at com.jayway.android.robotium.solo.Solo.clickOnButton(Solo.java:742) at com.octo.android.sample.test.HelloAndroidActivityFestAndroidTest.testCompute(HelloAndroidActivityFestAndroidTest.java:25) at java.lang.reflect.Method.invokeNative(Native Method) at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:554) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701) Caused by: java.lang.ClassCastException: java.util.ArrayList cannot be cast to android.view.View[] at com.jayway.android.robotium.solo.ViewFetcher.getWindowDecorViews(ViewFetcher.java:389) at com.jayway.android.robotium.solo.ViewFetcher.getAllViews(ViewFetcher.java:81) at com.jayway.android.robotium.solo.ViewFetcher.getViews(ViewFetcher.java:189) at com.jayway.android.robotium.solo.ViewFetcher.getCurrentViews(ViewFetcher.java:308) at com.jayway.android.robotium.solo.ViewFetcher.getCurrentViews(ViewFetcher.java:295) at com.jayway.android.robotium.solo.Searcher$1.call(Searcher.java:112) at com.jayway.android.robotium.solo.Searcher$1.call(Searcher.java:106) at com.jayway.android.robotium.solo.Searcher.searchFor(Searcher.java:203) at com.jayway.android.robotium.solo.Searcher.searchFor(Searcher.java:125) ... 18 more ``` --- .../octo/android/sample/test/HelloAndroidActivityTest.java | 7 +++++++ pom.xml | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/android-sample-tests/src/main/java/com/octo/android/sample/test/HelloAndroidActivityTest.java b/android-sample-tests/src/main/java/com/octo/android/sample/test/HelloAndroidActivityTest.java index c14e636..5010683 100644 --- a/android-sample-tests/src/main/java/com/octo/android/sample/test/HelloAndroidActivityTest.java +++ b/android-sample-tests/src/main/java/com/octo/android/sample/test/HelloAndroidActivityTest.java @@ -19,6 +19,13 @@ public HelloAndroidActivityTest() { super(HelloAndroidActivity.class); } + @Override + public void setUp() throws Exception { + super.setUp(); + // workaround for https://code.google.com/p/dexmaker/issues/detail?id=2 + System.setProperty("dexmaker.dexcache", getInstrumentation().getTargetContext().getCacheDir().toString()); + } + public void testActivity_not_null() { assertNotNull(getActivity()); } diff --git a/pom.xml b/pom.xml index 074db09..22f3196 100644 --- a/pom.xml +++ b/pom.xml @@ -28,7 +28,7 @@ 1.0 1.0 20130303 - 4.0 + 4.3.1 1.0.1 1.0.3 1.8