@Test public void scrollToBottom() { onData(anything()) .inAdapterView(withId(android.R.id.list)) .atPosition(24) .check(matches(withText("purus"))); }
/** * Make the item visible. * * Does only work when this item is accessed by adapter index. * * @since Espresso Macchiato 0.3 */ public void scrollTo() { if (mode == Mode.byItemIndex) { onData(instanceOf(Map.class)).atPosition(index).check(matches(ViewMatchers.isCompletelyDisplayed())); //onRow(itemText, property).check(matches(isCompletelyDisplayed())); } else { throw new UnsupportedOperationException("Method only supported when item accessed byItemIndex"); } }
public DataInteraction onLayerAt(int listPosition) { return onData(instanceOf(Layer.class)) .inAdapterView(withId(R.id.pocketpaint_layer_side_nav_list)) .atPosition(listPosition); }
/** * Performs a click on an item in an adapter view, such as GridView or ListView * @param position * @param resourceId of adapter view holding the item that should be clicked */ public static void clickAdapterViewItem(int position, int resourceId) { onData(anything()).inAdapterView(allOf(withId(resourceId), isDisplayed())) .atPosition(position).perform(click()); }
public void testListViewPeople() { List<Person> listPeople = DataProvider.getMockPeopleSet1(); for (int position = 0; position < listPeople.size(); position++) { onData(is(instanceOf(Person.class))) .inAdapterView(withId(R.id.list_view)) .atPosition(position) .onChildView(withText(listPeople.get(position).getName())) .check(matches(isDisplayed())); } }
private void fromPreferencesSelectBoardSize() { DataInteraction boardSizePreference = onData(anything()) .inAdapterView(allOf(withId(android.R.id.list), childAtPosition( withClassName(is("android.widget.LinearLayout")), 0))) .atPosition(1); boardSizePreference.perform(click()); DataInteraction selectBoardSizeView = onData(anything()) .inAdapterView(allOf(withClassName(is("com.android.internal.app.AlertController$RecycleListView")), childAtPosition( withClassName(is("android.widget.FrameLayout")), 0))) .atPosition(0); selectBoardSizeView.perform(click()); }
private void fromPreferencesSelectLanguage(Language language) { DataInteraction dictionaryPreference = onData(anything()) .inAdapterView(allOf(withId(android.R.id.list), childAtPosition( withClassName(is("android.widget.LinearLayout")), 0))) .atPosition(0); dictionaryPreference.perform(click()); DataInteraction selectLangView = onData(anything()) .inAdapterView(allOf(withClassName(is("com.android.internal.app.AlertController$RecycleListView")), childAtPosition( withClassName(is("android.widget.FrameLayout")), 0))) .atPosition(getIndexForLanguage(language)); selectLangView.perform(click()); }
private void fromPreferencesSelectScoreType() { DataInteraction selectScoreTypePreference = onData(anything()) .inAdapterView(allOf(withId(android.R.id.list), childAtPosition( withClassName(is("android.widget.LinearLayout")), 0))) .atPosition(3); selectScoreTypePreference.perform(click()); DataInteraction selectScoreTypeView = onData(anything()) .inAdapterView(allOf(withClassName(is("com.android.internal.app.AlertController$RecycleListView")), childAtPosition( withClassName(is("android.widget.FrameLayout")), 0))) .atPosition(1); selectScoreTypeView.perform(click()); }
.atPosition(0); Log.e(TAG,"Select downloading file"); linearLayout.perform(click());
public void test003CodesChange() throws InterruptedException { ArrayList<String> oldCodes = new ArrayList<>(); for(int i = 0; i < codes.length; i++){ onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(i) .onChildView(withId(R.id.textViewLabel)) .check(matches(withText(codes[i][0]))); String otp = TOTPHelper.generate(codes[i][1].getBytes()); oldCodes.add(otp); onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(i) .onChildView(withId(R.id.textViewOTP)) .check(matches(withText(otp))); } Thread.sleep(30*1000); for(int i = 0; i < codes.length; i++){ onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(i) .onChildView(withId(R.id.textViewLabel)) .check(matches(withText(codes[i][0]))); String otp = TOTPHelper.generate(codes[i][1].getBytes()); assertTrue(!oldCodes.get(i).equals(otp)); onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(i) .onChildView(withId(R.id.textViewOTP)) .check(matches(withText(otp))); } }
public void clickPrevAnswer(int position) { updateNumberofResults(); onData(anything()) .inAdapterView(withId(android.R.id.list)) .atPosition(numberOfAdapterItems - 1 - position) .onChildView(withId(R.id.list_item_result_textPrevAnswer)) .perform(click()); }
public void clickPrevQuery(int position) { updateNumberofResults(); onData(anything()) .inAdapterView(withId(android.R.id.list)) .atPosition(numberOfAdapterItems - 1 - position) .onChildView(withId(R.id.list_item_result_textPrevQuery)) .perform(click()); }
public void testListViewClickOnImages() { List<Person> listPeople = DataProvider.getMockPeopleSet1(); for (int position = 0; position < listPeople.size(); position++) { onData(is(instanceOf(Person.class))) .inAdapterView(withId(R.id.list_view)) .atPosition(position) .onChildView(withId(R.id.image_view_person)) .perform(click()); //Check Dialog shows and close it onView(withText(getActivity().getString(R.string.my_name_string, listPeople.get(position).getName()))) .check(matches(isDisplayed())); onView(withText(R.string.ok)) .perform(click()); } }
public void test005EditMode() throws InterruptedException { onView(withId(R.id.action_edit)).check(doesNotExist()); onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(0) .perform(longClick()); onView(withId(R.id.action_edit)).check(matches(isDisplayed())); onView(withId(R.id.action_delete)).check(matches(isDisplayed())); ActionBarContextView.class.getCanonicalName(); onView(allOf(isDescendantOfA(withClassName(Matchers.containsString("ActionBarContextView"))), withText(codes[0][0]))).check(matches(isDisplayed())); onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(1) .perform(longClick()); onView(withId(R.id.action_edit)).check(matches(isDisplayed())); onView(withId(R.id.action_delete)).check(matches(isDisplayed())); onView(allOf(isDescendantOfA(withClassName(Matchers.containsString("ActionBarContextView"))), withText(codes[1][0]))).check(matches(isDisplayed())); onView(withId(R.id.listView)).perform(pressBack()); onView(withId(R.id.action_edit)).check(doesNotExist()); }
public void test006Rename(){ onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(1) .perform(longClick()); onView(withId(R.id.action_edit)).check(matches(isDisplayed())); onView(withId(R.id.action_edit)).perform(click()); onView(withText(codes[1][0])).perform(click()).perform(typeText(" VERY TEST")); onView(withText("Save")).perform(click()); onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(1) .onChildView(withId(R.id.textViewLabel)) .check(matches(withText(codes[1][0] + " VERY TEST"))); }
public void test005RenameCancel(){ onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(1) .perform(longClick()); onView(withId(R.id.action_edit)).check(matches(isDisplayed())); onView(withId(R.id.action_edit)).perform(click()); onView(withText(codes[1][0])).perform(click()).perform(typeText(" VERY TEST")); onView(withText("Cancel")).perform(click()); onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(1) .onChildView(withId(R.id.textViewLabel)) .check(matches(withText(codes[1][0]))); }
.atPosition(i) .onChildView(withId(R.id.textViewLabel)) .check(matches(withText(codes[i][0]))); .atPosition(i) .onChildView(withId(R.id.textViewLabel)) .check(matches(withText(codes[i][0])));
public void editQuestions() { String question = "This is just a silly question whose answer changed to (a)."; onData(anything()).inAdapterView(withId(R.id.template_editor_listview)).atPosition(1).perform(longClick()); onView(withId(R.id.action_edit)).perform(click()); onView(withId(R.id.quiz_question)).perform(replaceText(question)); closeSoftKeyboard(); onView(withId(R.id.quiz_radio_1)).perform(scrollTo()).perform(click()); closeSoftKeyboard(); onView(withResourceName("buttonDefaultPositive")).perform(click()); }
public void test007DeleteCancel() throws InterruptedException, EncoderException { onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(0) .perform(longClick()); onView(withId(R.id.action_delete)).check(matches(isDisplayed())); onView(withId(R.id.action_delete)).perform(click()); onView(withText("Remove")).check(matches(isDisplayed())); onView(withText("Cancel")).check(matches(isDisplayed())); onView(withText("Cancel")).perform(click()); onView(withText("Remove")).check(doesNotExist()); onView(withId(R.id.listView)).check(matches(withListSize(codes.length))); }
public void test008Delete() throws InterruptedException, EncoderException { // remove test for(int i = codes.length; i > 0; i--){ onData(anything()).inAdapterView(withId(R.id.listView)) .atPosition(0) .perform(longClick()); onView(withId(R.id.action_delete)).check(matches(isDisplayed())); onView(withId(R.id.action_delete)).perform(click()); onView(withText("Remove")).check(matches(isDisplayed())); onView(withText("Remove")).perform(click()); onView(withId(R.id.listView)).check(matches(withListSize(i - 1))); if(i > 1){ onView(withText("Account removed")).check(matches(isDisplayed())); } else { onView(withText(R.string.no_accounts)).check(matches(isDisplayed())); } } }