Java 类android.support.test.espresso.DataInteraction 实例源码
项目:TitanCompanion
文件:TCBaseTest.java
protected void performStartAdventure() {
ViewInteraction button = onView(allOf(withText(getString(R.string.create_new_adventure)), isDisplayed()));
button.perform(click());
//Clicks over the proper book using the property order of the GamebookEnum
DataInteraction textView = onData(anything())
.inAdapterView(allOf(withId(R.id.gamebookListView),
childAtPosition(
withClassName(is("android.widget.RelativeLayout")),
0)))
.atPosition(getGamebook().getOrder() - 1);
textView.perform(click());
button = onView(allOf(withText(getString(R.string.create_new_adventure)), isDisplayed()));
button.perform(click());
Espresso.closeSoftKeyboard();
}
项目:orgzly-android
文件:EspressoUtils.java
/**
*/
@SuppressWarnings("unchecked")
public static DataInteraction onListItem(int pos) {
return onData(anything())
.inAdapterView(allOf(withId(android.R.id.list), isDisplayed()))
.atPosition(pos);
}
项目:TitanCompanion
文件:TestSOTS.java
public void performChoosemartialArt() {
DataInteraction linearLayout = onData(anything())
.inAdapterView(allOf(withId(R.id.skillList),
childAtPosition(
withClassName(is("android.widget.RelativeLayout")),
1)))
.atPosition(0);
linearLayout.perform(click());
}
项目:TitanCompanion
文件:TestTCOC.java
public void performChooseSpells() {
DataInteraction textView2 = onData(anything())
.inAdapterView(allOf(withId(R.id.spellListView),
childAtPosition(
withClassName(is("android.widget.LinearLayout")),
1)))
.atPosition(0);
textView2.perform(click());
DataInteraction textView3 = onData(anything())
.inAdapterView(allOf(withId(R.id.spellListView),
childAtPosition(
withClassName(is("android.widget.LinearLayout")),
1)))
.atPosition(0);
textView3.perform(click());
DataInteraction textView4 = onData(anything())
.inAdapterView(allOf(withId(R.id.spellListView),
childAtPosition(
withClassName(is("android.widget.LinearLayout")),
1)))
.atPosition(1);
textView4.perform(click());
DataInteraction textView5 = onData(anything())
.inAdapterView(allOf(withId(R.id.spellListView),
childAtPosition(
withClassName(is("android.widget.LinearLayout")),
1)))
.atPosition(1);
textView5.perform(click());
}
项目:TitanCompanion
文件:TestAWF.java
public void performChooseSuperpower() {
DataInteraction linearLayout = onData(anything())
.inAdapterView(allOf(withId(R.id.superpowerList),
childAtPosition(
withClassName(is("android.widget.RelativeLayout")),
1)))
.atPosition(0);
linearLayout.perform(click());
}
项目:TitanCompanion
文件:TCBaseTest.java
protected void performChoosePotion() {
DataInteraction linearLayout = onData(anything())
.inAdapterView(allOf(withId(R.id.potionList),
childAtPosition(
withClassName(is("android.widget.LinearLayout")),
0)))
.atPosition(0);
linearLayout.perform(click());
}
项目:GroupScheduleCoordinator
文件:MainActivityTest.java
@Test
public void testExistingGroup() throws InterruptedException {
//Given a preexisting group newGroup, when we search for new group in the list view,
//then the new group is still there (and clickable)
Thread.sleep(1000);
DataInteraction v2 = onData(hasToString(startsWith("newGroup")))
.inAdapterView(withId(R.id.groupList)).atPosition(0);
v2.check(matches(withText("newGroup")));
}
项目:Cook-E
文件:HomeActivityTest.java
/**
* Tests clicking on a meal in the meal list to open it
*/
public void testOpenMeal() throws SQLException {
final Matcher<View> mealList = withTagKey(R.id.test_tag_meal_list,
Is.<Object>is("Meal List"));
final DataInteraction mealItem = onData(anything()).inAdapterView(mealList);
mealItem.perform(click());
// Check that the MealViewActivity activity has started
// The below statement produces an error in the instrumentation code.
// TODO: Fix
// intended(hasComponent(new ComponentName(getInstrumentation().getTargetContext(),
// MealViewActivity.class)));
}
项目:green-coffee
文件:DataMatcher.java
public ActionableData with(C content)
{
DataInteraction dataInteraction = onData(dataMatcher(content));
if (resourceId != 0)
{
return new ActionableData(dataInteraction.inAdapterView(withId(resourceId)));
}
else
{
return new ActionableData(dataInteraction);
}
}
项目:rCaltrain
文件:ApplicationTest.java
@Test
public void test_schedule_saturday() {
String fromName = "San Francisco";
String toName = "22nd St";
onView(withId(R.id.btn_sat)).perform(click());
onView(withId(R.id.input_departure)).perform(click());
onData(is(fromName)).perform(click());
onView(withId(R.id.input_arrival)).perform(click());
onData(is(toName)).perform(click());
List<String> expects = Arrays.asList("08:07 => 08:11",
"09:37 => 09:41",
"11:07 => 11:11",
"12:37 => 12:41",
"14:07 => 14:11",
"15:37 => 15:41",
"17:07 => 17:11",
"18:37 => 18:41",
"20:07 => 20:11",
"21:37 => 21:41",
"22:51 => 22:55",
"00:05 => 00:10");
onView(withId(R.id.results)).check(matches(new ResultListMatcher(fromName,
toName,
expects.size())));
DataInteraction interaction = onData(anything()).inAdapterView(withId(R.id.results));
for (int l = expects.size() - 1; l >= 0; l--) {
String expect = expects.get(l);
interaction
.atPosition(l)
.check(matches(new ResultViewMatcher(fromName, toName, l, expect)));
}
}
项目:rCaltrain
文件:ApplicationTest.java
@Test
public void test_schedule_sunday() {
String fromName = "San Francisco";
String toName = "22nd St";
onView(withId(R.id.btn_sun)).perform(click());
onView(withId(R.id.input_departure)).perform(click());
onData(is(fromName)).perform(click());
onView(withId(R.id.input_arrival)).perform(click());
onData(is(toName)).perform(click());
List<String> expects = Arrays.asList("08:07 => 08:11",
"09:37 => 09:41",
"11:07 => 11:11",
"12:37 => 12:41",
"14:07 => 14:11",
"15:37 => 15:41",
"17:07 => 17:11",
"18:37 => 18:41",
"20:07 => 20:11",
"21:37 => 21:41");
onView(withId(R.id.results)).check(matches(new ResultListMatcher(fromName,
toName,
expects.size())));
DataInteraction interaction = onData(anything()).inAdapterView(withId(R.id.results));
for (int l = expects.size() - 1; l >= 0; l--) {
String expect = expects.get(l);
interaction
.atPosition(l)
.check(matches(new ResultViewMatcher(fromName, toName, l, expect)));
}
}
项目:apps-android-wikipedia
文件:PageActivityTest.java
public static void testArticleLoad(Activity activity) {
while (!viewIsDisplayed(R.id.search_results_list)) {
waitFor(WAIT_FOR_1000);
}
DataInteraction view = onData(anything())
.inAdapterView(allOf(withId(R.id.search_results_list),
childAtPosition(
withId(R.id.search_results_container),
1)))
.atPosition(0);
view.perform(click());
while (!viewIsDisplayed(R.id.view_page_header_image)) {
waitFor(WAIT_FOR_2000);
}
ScreenshotTools.snap("Barack");
onView(withId(R.id.view_page_header_image))
.perform(swipeUp());
onView(withId(R.id.page_fragment))
.perform(swipeUp());
ScreenshotTools.snap("ArticleSwipeUpNoActionBar");
onView(withId(R.id.page_fragment))
.perform(swipeUp());
onView(withId(R.id.page_fragment))
.perform(swipeDown());
ScreenshotTools.snap("ArticleSwipeDownActionBarAndTabSeen");
}
项目:orgzly-android
文件:EspressoUtils.java
static DataInteraction onSpinnerString(String value) {
return onData(allOf(instanceOf(String.class), is(value))).inRoot(not(isDialog()));
}
项目:green-coffee
文件:ActionableData.java
public ActionableData(DataInteraction dataInteraction)
{
this.dataInteraction = dataInteraction;
}
项目:rxpresso
文件:Then.java
public DataInteraction thenOnData(Matcher<Object> dataMatcher) {
return onData(dataMatcher);
}
项目:Bill-Calculator
文件:ProviderSettingsTester.java
public Preference getPreferenceAtLine(int index) {
DataInteraction dataInteraction = onData(anything())
.inAdapterView(withId(android.R.id.list))
.atPosition(index);
return new Preference(dataInteraction);
}
项目:Bill-Calculator
文件:ProviderSettingsTester.java
public Preference getPreferenceWithTitle(@StringRes int id) {
DataInteraction dataInteraction = onData(allOf(instanceOf(EditTextPreference.class), withTitle(id)));
return new Preference(dataInteraction);
}
项目:Bill-Calculator
文件:ProviderSettingsTester.java
private Preference(DataInteraction dataInteraction) {
this.dataInteraction = dataInteraction;
}
项目:openhab-android
文件:BasicWidgetTest.java
@Test
public void openHABMainActivityTest() throws InterruptedException {
ViewInteraction firstRecyclerView = onView(withId(R.id.recyclerview));
firstRecyclerView
.perform(RecyclerViewActions.scrollToPosition(0))
.check(matches(atPositionOnView(0, isDisplayed(), R.id.widgetlabel)))
.check(matches(atPositionOnView(0, withText("First Floor"), R.id.widgetlabel)));
firstRecyclerView
.perform(RecyclerViewActions.scrollToPosition(6))
.check(matches(atPositionOnView(6, isDisplayed(), R.id.widgetlabel)))
.check(matches(atPositionOnView(6, withText("Astronomical Data"), R.id.widgetlabel)));
// does it show "garden"?
firstRecyclerView
.perform(RecyclerViewActions.scrollToPosition(3))
.check(matches(atPositionOnView(3, isDisplayed(), R.id.widgetlabel)))
.check(matches(atPositionOnView(3, withText("Garden"), R.id.widgetlabel)));
// open widget overview
firstRecyclerView
.perform(RecyclerViewActions.actionOnItemAtPosition(10, click()));
// FIXME: is there a more elegant way to wait for the new fragment?
Thread.sleep(1000);
// check whether selection widget appears and click on it
ViewInteraction secondRecyclerView = onView(withIndex(withId(R.id.recyclerview), 1));
secondRecyclerView
.perform(RecyclerViewActions.scrollToPosition(4))
.check(matches(atPositionOnView(4, withText("Scene Selection"), R.id.widgetlabel)))
.check(matches(atPositionOnView(4, isDisplayed(), R.id.selectionspinner)))
.perform(RecyclerViewActions.actionOnItemAtPosition(4, onChildView(click(), R.id.selectionspinner)));
DataInteraction appCompatCheckedTextView = onData(anything())
.inAdapterView(withClassName(
is("com.android.internal.app.AlertController$RecycleListView")))
.atPosition(0);
appCompatCheckedTextView.check(matches(withText("off")));
appCompatCheckedTextView.perform(click());
// check whether scene radio button group is present
secondRecyclerView
.perform(RecyclerViewActions.scrollToPosition(5))
.check(matches(atPositionOnView(5, isDisplayed(), R.id.sectionswitchradiogroup)));
// check whether switch is displayed
secondRecyclerView
.perform(RecyclerViewActions.scrollToPosition(1))
.check(matches(atPositionOnView(1, isDisplayed(), R.id.switchswitch)));
// check whether slider is displayed
secondRecyclerView
.perform(RecyclerViewActions.scrollToPosition(8))
.check(matches(atPositionOnView(8, isDisplayed(), R.id.sliderseekbar)));
// check whether color control button is displayed
secondRecyclerView
.perform(RecyclerViewActions.scrollToPosition(9))
.check(matches(atPositionOnView(9, isDisplayed(), R.id.colorbutton_color)));
// check whether roller shutter button is displayed
secondRecyclerView
.perform(RecyclerViewActions.scrollToPosition(10))
.check(matches(atPositionOnView(10, isDisplayed(), R.id.rollershutterbutton_stop)));
}
项目:rCaltrain
文件:ApplicationTest.java
@Test
public void test_schedule_weekday() {
String fromName = "San Francisco";
String toName = "22nd St";
onView(withId(R.id.btn_week)).perform(click());
onView(withId(R.id.input_departure)).perform(click());
onData(is(fromName)).perform(click());
onView(withId(R.id.input_arrival)).perform(click());
onData(is(toName)).perform(click());
List<String> expects = Arrays.asList("04:55 => 04:59",
"05:25 => 05:29",
"06:05 => 06:09",
"06:15 => 06:19",
"06:35 => 06:39",
"06:45 => 06:51",
"06:59 => 07:03",
"07:05 => 07:10",
"07:15 => 07:19",
"07:35 => 07:39",
"07:45 => 07:51",
"07:59 => 08:03",
"08:05 => 08:10",
"08:15 => 08:19",
"08:35 => 08:39",
"08:45 => 08:49",
"09:00 => 09:05",
"10:00 => 10:04",
"11:00 => 11:04",
"12:00 => 12:04",
"13:00 => 13:04",
"14:00 => 14:04",
"15:00 => 15:04",
"16:32 => 16:36",
"17:32 => 17:36",
"18:32 => 18:36",
"19:30 => 19:34",
"20:30 => 20:34",
"21:30 => 21:34",
"22:40 => 22:44",
"00:05 => 00:10");
onView(withId(R.id.results)).check(matches(new ResultListMatcher(fromName,
toName,
expects.size())));
DataInteraction interaction = onData(anything()).inAdapterView(withId(R.id.results));
for (int l = expects.size() - 1; l >= 0; l--) {
String expect = expects.get(l);
interaction
.atPosition(l)
.check(matches(new ResultViewMatcher(fromName, toName, l, expect)));
}
}
项目:Ironhide
文件:ListItem.java
/**
* @see BaseView#BaseView(Class, org.hamcrest.Matcher)
* Instead instantiates a {@link DataInteraction}
*/
@SuppressWarnings("unchecked")
public ListItem(Class<T> type, DataInteraction adapter) {
super(type, (Matcher) anything());
this.adapter = adapter;
}
项目:Ironhide
文件:ListAdapter.java
/**
* Retains type and adapter for use later on.
* @param type the class of the generic type
* @param adapter the {@link android.support.test.espresso.DataInteraction} for the {@link android.widget.AdapterView} this represents
*/
@SuppressWarnings("unchecked")
private ListAdapter(Class<T> type, DataInteraction adapter) {
super(type, (Matcher) anything());
this.adapter = adapter;
}
项目:apps-android-wikipedia
文件:SearchTest.java
public static void searchKeywordAndGo(@NonNull String keyword) {
while (!viewIsDisplayed(R.id.search_container)) {
waitFor(WAIT_FOR_1000);
}
ViewInteraction linearLayout = onView(
allOf(withId(R.id.search_container),
childAtPosition(
childAtPosition(
withId(R.id.fragment_feed_feed),
0),
0),
isDisplayed()));
linearLayout.perform(click());
ViewInteraction frameLayout = onView(
allOf(withId(R.id.search_lang_button_container), withContentDescription("Wikipedia language"),
childAtPosition(
childAtPosition(
withId(R.id.search_toolbar),
1),
1),
isDisplayed()));
frameLayout.perform(click());
ViewInteraction plainPasteEditText = onView(
allOf(withId(R.id.preference_languages_filter),
childAtPosition(
childAtPosition(
withClassName(is("android.support.design.widget.TextInputLayout")),
0),
0),
isDisplayed()));
plainPasteEditText.perform(replaceText("test"), closeSoftKeyboard());
// take screenshot
ScreenshotTools.snap("SearchPage");
DataInteraction linearLayout2 = onData(anything())
.inAdapterView(allOf(withId(R.id.preference_languages_list),
childAtPosition(
withClassName(is("android.widget.LinearLayout")),
1)))
.atPosition(0);
linearLayout2.perform(click());
ViewInteraction searchAutoComplete = onView(
allOf(withId(R.id.search_src_text),
childAtPosition(
allOf(withId(R.id.search_plate),
childAtPosition(
withId(R.id.search_edit_frame),
1)),
0),
isDisplayed()));
searchAutoComplete.perform(replaceText(keyword), closeSoftKeyboard());
// hold until the result fetch
while (!viewIsDisplayed(R.id.search_results_list)) {
waitFor(WAIT_FOR_1000);
}
// take screenshot
ScreenshotTools.snap("SearchSuggestionPage");
}
项目:igrow-android
文件:EnvironmentalSensorsActivityTest.java
/**
* Uses {@link Espresso#onData(org.hamcrest.Matcher)} to get a reference to a specific row.
* <p>
* Note: A custom matcher can be used to match the content and have more readable code.
* See the Custom Matcher Sample.
* </p>
*
* @param str the content of the field
* @return a {@link DataInteraction} referencing the row
*/
private static DataInteraction onRow(String str) {
//return onData(hasEntry(equalTo(LongListActivity.ROW_TEXT), is(str)));
return null;
}
项目:AndroidProjects
文件:LongListActivityTest.java
/**
* Uses {@link Espresso#onData(org.hamcrest.Matcher)} to get a reference to a specific row.
* <p>
* Note: A custom matcher can be used to match the content and have more readable code.
* See the Custom Matcher Sample.
* </p>
*
* @param str the content of the field
* @return a {@link DataInteraction} referencing the row
*/
private static DataInteraction onRow(String str) {
return onData(hasEntry(equalTo(LongListActivity.ROW_TEXT), is(str)));
}