use of com.jakewharton.rxbinding2.RecordingObserver in project RxBinding by JakeWharton.
the class RxAdapterViewTest method itemClicks.
@Test
public void itemClicks() {
RecordingObserver<Integer> o = new RecordingObserver<>();
RxAdapterView.itemClicks(listView).subscribeOn(AndroidSchedulers.mainThread()).subscribe(o);
o.assertNoMoreEvents();
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
listView.performItemClick(listView.getChildAt(2), 2, 2);
}
});
assertEquals(2, o.takeNext().intValue());
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
listView.performItemClick(listView.getChildAt(0), 0, 0);
}
});
assertEquals(0, o.takeNext().intValue());
o.dispose();
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
listView.performItemClick(listView.getChildAt(1), 1, 1);
}
});
o.assertNoMoreEvents();
}
use of com.jakewharton.rxbinding2.RecordingObserver in project RxBinding by JakeWharton.
the class RxAdapterViewTest method itemClickEvents.
@Test
public void itemClickEvents() {
RecordingObserver<AdapterViewItemClickEvent> o = new RecordingObserver<>();
RxAdapterView.itemClickEvents(listView).subscribeOn(AndroidSchedulers.mainThread()).subscribe(o);
o.assertNoMoreEvents();
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
listView.performItemClick(listView.getChildAt(2), 2, 2);
}
});
AdapterViewItemClickEvent event = o.takeNext();
assertEquals(listView, event.view());
assertNotNull(event.clickedView());
assertEquals(2, event.position());
assertEquals(2, event.id());
o.dispose();
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
listView.performItemClick(listView.getChildAt(1), 1, 1);
}
});
o.assertNoMoreEvents();
}
use of com.jakewharton.rxbinding2.RecordingObserver in project RxBinding by JakeWharton.
the class RxSearchBarTest method searchQueryChangeEventsKeyboardDismissed.
@Test
@UiThreadTest
public void searchQueryChangeEventsKeyboardDismissed() {
RecordingObserver<SearchBarSearchQueryEvent> o = new RecordingObserver<>();
RxSearchBar.searchQueryChangeEvents(searchBar).subscribe(o);
o.assertNoMoreEvents();
KeyEvent keyEvent = new KeyEvent(KeyEvent.ACTION_DOWN, KeyEvent.KEYCODE_BACK);
searchBar.setSearchQuery("q");
searchEditText.onKeyPreIme(KeyEvent.KEYCODE_BACK, keyEvent);
assertEquals(SearchBarSearchQueryChangedEvent.create(searchBar, "q"), o.takeNext());
assertEquals(SearchBarSearchQueryKeyboardDismissedEvent.create(searchBar, "q"), o.takeNext());
o.dispose();
searchEditText.onKeyPreIme(KeyEvent.KEYCODE_BACK, keyEvent);
o.assertNoMoreEvents();
}
use of com.jakewharton.rxbinding2.RecordingObserver in project RxBinding by JakeWharton.
the class RxSnackbarTest method dismisses.
@Test
public void dismisses() {
final Snackbar view = Snackbar.make(parent, "Hey", LENGTH_SHORT);
RecordingObserver<Integer> o = new RecordingObserver<>();
RxSnackbar.dismisses(view).subscribeOn(AndroidSchedulers.mainThread()).subscribe(o);
o.assertNoMoreEvents();
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
view.show();
}
});
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
view.dismiss();
}
});
assertEquals(DISMISS_EVENT_MANUAL, o.takeNext().intValue());
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
view.show();
}
});
o.dispose();
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
view.dismiss();
}
});
o.assertNoMoreEvents();
}
use of com.jakewharton.rxbinding2.RecordingObserver in project RxBinding by JakeWharton.
the class RxToolbarTest method itemClicks.
@Test
@UiThreadTest
public void itemClicks() {
Menu menu = view.getMenu();
MenuItem item1 = menu.add(0, 1, 0, "Hi");
MenuItem item2 = menu.add(0, 2, 0, "Hey");
RecordingObserver<MenuItem> o = new RecordingObserver<>();
RxToolbar.itemClicks(view).subscribe(o);
o.assertNoMoreEvents();
menu.performIdentifierAction(2, 0);
assertSame(item2, o.takeNext());
menu.performIdentifierAction(1, 0);
assertSame(item1, o.takeNext());
o.dispose();
menu.performIdentifierAction(2, 0);
o.assertNoMoreEvents();
}
Aggregations