Question

I can't click on the first item of my Listview backed by a CursorAdapter. Here's what I tried:

onData(is(instanceOf(ContactsListFragment.ContactsAdapter.class)))
    // .inAdapterView(withId(android.R.id.list))
    .atPosition(0)
    .perform(click());

... and here's what I get:

com.google.android.apps.common.testing.ui.espresso.PerformException: Error performing 'load adapter data' on view 'is assignable from class: class android.widget.AdapterView'. at com.google.android.apps.common.testing.ui.espresso.PerformException$Builder.build(PerformException.java:67) at com.google.android.apps.common.testing.ui.espresso.base.DefaultFailureHandler.getUserFriendlyError(DefaultFailureHandler.java:57) at com.google.android.apps.common.testing.ui.espresso.base.DefaultFailureHandler.handle(DefaultFailureHandler.java:40) at com.google.android.apps.common.testing.ui.espresso.ViewInteraction.runSynchronouslyOnUiThread(ViewInteraction.java:159) at com.google.android.apps.common.testing.ui.espresso.ViewInteraction.doPerform(ViewInteraction.java:90) at com.google.android.apps.common.testing.ui.espresso.ViewInteraction.perform(ViewInteraction.java:73) at com.google.android.apps.common.testing.ui.espresso.DataInteraction.load(DataInteraction.java:135) at com.google.android.apps.common.testing.ui.espresso.DataInteraction.perform(DataInteraction.java:112) at .test.ui.activity.ContactsListActivityTest.testShouldSendResultsBackToMailActivity(ContactsListActivityTest.java:21) 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 com.google.android.apps.common.testing.testrunner.GoogleInstrumentationTestRunner.onStart(GoogleInstrumentationTestRunner.java:167) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701) Caused by: java.lang.RuntimeException: No data found matching: is an instance of .ui.activity.delivery.contacts.ContactsListFragment$ContactsAdapter contained values: <[Data: android.content.ContentResolver$CursorWrapperInner@b312ecd8 (class: class android.content.ContentResolver$CursorWrapperInner) token: 0, Data: android.content.ContentResolver$CursorWrapperInner@b312ecd8 (class: class android.content.ContentResolver$CursorWrapperInner) token: 1, Data: android.content.ContentResolver$CursorWrapperInner@b312ecd8 (class: class android.content.ContentResolver$CursorWrapperInner) token: 2]> at com.google.android.apps.common.testing.ui.espresso.action.AdapterDataLoaderAction.perform(AdapterDataLoaderAction.java:80) at com.google.android.apps.common.testing.ui.espresso.ViewInteraction$1.run(ViewInteraction.java:119) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:390) at java.util.concurrent.FutureTask.run(FutureTask.java:234) at android.os.Handler.handleCallback(Handler.java:730) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.app.ActivityThread.main(ActivityThread.java:5103) at java.lang.reflect.Method.invokeNative(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:737) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:553) at dalvik.system.NativeStart.main(Native Method)

Was it helpful?

Solution

Will be addressed in next version (Espresso 1.2). See related issue: https://code.google.com/p/android-test-kit/issues/detail?id=69

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top