use of org.odk.collect.android.adapters.SelectMultipleListAdapter in project collect by opendatakit.
the class ChoicesRecyclerViewTest method whenChoicesFiltered_shouldProperValuesBeReturnedInSelectMultiNoButtonsMode.
@Test
public void whenChoicesFiltered_shouldProperValuesBeReturnedInSelectMultiNoButtonsMode() {
List<SelectChoice> items = getTestChoices();
setUpFormEntryPrompt(items, "no-buttons");
SelectMultipleListAdapter adapter = new SelectMultipleListAdapter(new ArrayList<>(), null, activityController.get(), items, formEntryPrompt, null, null, 0, 1, true, mock(MediaUtils.class));
initRecyclerView(adapter, false);
assertVisibleItemsInNoButtonsMode("AAA", "BBB");
filterList(adapter, "b");
assertVisibleItemsInNoButtonsMode("BBB");
filterList(adapter, "bc");
assertVisibleItemsInNoButtonsMode();
filterList(adapter, "b");
assertVisibleItemsInNoButtonsMode("BBB");
filterList(adapter, "");
assertVisibleItemsInNoButtonsMode("AAA", "BBB");
}
use of org.odk.collect.android.adapters.SelectMultipleListAdapter in project collect by opendatakit.
the class ChoicesRecyclerViewTest method whenClickOneOption_shouldPreviouslySelectedOptionRemainSelectedInSelectMultiButtonsMode.
@Test
public void whenClickOneOption_shouldPreviouslySelectedOptionRemainSelectedInSelectMultiButtonsMode() {
List<SelectChoice> items = getTestChoices();
setUpFormEntryPrompt(items, "");
SelectItemClickListener listener = mock(SelectItemClickListener.class);
SelectMultipleListAdapter adapter = new SelectMultipleListAdapter(new ArrayList<>(), listener, activityController.get(), items, formEntryPrompt, null, null, 0, 1, false, mock(MediaUtils.class));
initRecyclerView(adapter, false);
// Select AAA
clickChoice(0);
assertThat(isItemSelected(0), is(true));
assertThat(isItemSelected(1), is(false));
// Select BBB
clickChoice(1);
assertThat(isItemSelected(0), is(true));
assertThat(isItemSelected(1), is(true));
}
use of org.odk.collect.android.adapters.SelectMultipleListAdapter in project collect by opendatakit.
the class ChoicesRecyclerViewTest method whenChoicesFiltered_shouldProperValuesBeReturnedInSelectMultiButtonsMode.
@Test
public void whenChoicesFiltered_shouldProperValuesBeReturnedInSelectMultiButtonsMode() {
List<SelectChoice> items = getTestChoices();
setUpFormEntryPrompt(items, "");
SelectMultipleListAdapter adapter = new SelectMultipleListAdapter(new ArrayList<>(), null, activityController.get(), items, formEntryPrompt, null, null, 0, 1, false, mock(MediaUtils.class));
initRecyclerView(adapter, false);
assertVisibleItemsInButtonsMode("AAA", "BBB");
filterList(adapter, "b");
assertVisibleItemsInButtonsMode("BBB");
filterList(adapter, "bc");
assertVisibleItemsInButtonsMode();
filterList(adapter, "b");
assertVisibleItemsInButtonsMode("BBB");
filterList(adapter, "");
assertVisibleItemsInButtonsMode("AAA", "BBB");
}
use of org.odk.collect.android.adapters.SelectMultipleListAdapter in project collect by opendatakit.
the class ChoicesRecyclerViewTest method whenClickOneElementTwice_shouldThatElementBeUnselectedInSelectMultiNoButtonsMode.
@Test
public void whenClickOneElementTwice_shouldThatElementBeUnselectedInSelectMultiNoButtonsMode() {
List<SelectChoice> items = getTestChoices();
setUpFormEntryPrompt(items, "no-buttons");
SelectItemClickListener listener = mock(SelectItemClickListener.class);
SelectMultipleListAdapter adapter = new SelectMultipleListAdapter(new ArrayList<>(), listener, activityController.get(), items, formEntryPrompt, null, audioHelper, 0, 1, true, mock(MediaUtils.class));
initRecyclerView(adapter, false);
// Select AAA
clickChoice(0);
assertThat(isItemSelected(0), is(true));
assertThat(isItemSelected(1), is(false));
// Select AAA again
clickChoice(0);
assertThat(isItemSelected(0), is(false));
assertThat(isItemSelected(1), is(false));
}
use of org.odk.collect.android.adapters.SelectMultipleListAdapter in project collect by opendatakit.
the class ChoicesRecyclerViewTest method whenButtonsModeIsUsed_shouldViewAndItsElementsBeLongClickableToSupportRemovingAnswers.
@Test
public void whenButtonsModeIsUsed_shouldViewAndItsElementsBeLongClickableToSupportRemovingAnswers() {
List<SelectChoice> items = getTestChoices();
setUpFormEntryPrompt(items, "");
SelectItemClickListener listener = mock(SelectItemClickListener.class);
SelectMultipleListAdapter adapter = new SelectMultipleListAdapter(new ArrayList<>(), listener, activityController.get(), items, formEntryPrompt, null, null, 0, 1, false, mock(MediaUtils.class));
initRecyclerView(adapter, false);
AudioVideoImageTextLabel view = (AudioVideoImageTextLabel) getChoiceView(0);
File file = mock(File.class);
when(file.exists()).thenReturn(true);
view.setImage(file, mock(ImageLoader.class));
view.setVideo(file);
AudioHelper audioHelper = mock(AudioHelper.class);
MutableLiveData<Boolean> isPlaying = new MutableLiveData<>(false);
when(audioHelper.setAudio(any(AudioButton.class), any())).thenReturn(isPlaying);
view.setAudio("file://audio.mp3", audioHelper);
assertThat(view.isLongClickable(), is(true));
assertThat(view.getImageView().isLongClickable(), is(true));
assertThat(view.getVideoButton().isLongClickable(), is(true));
assertThat(view.getAudioButton().isLongClickable(), is(true));
assertThat(view.getLabelTextView().isLongClickable(), is(true));
}
Aggregations