@Test public void shouldLoadFullOwnerOnInstantiation() { assertEquals(owner.name, viewModel.ownerName.get()); assertEquals(owner.email, viewModel.ownerEmail.get()); assertEquals(owner.location, viewModel.ownerLocation.get()); assertEquals(View.VISIBLE, viewModel.ownerEmailVisibility.get()); assertEquals(View.VISIBLE, viewModel.ownerLocationVisibility.get()); assertEquals(View.VISIBLE, viewModel.ownerLayoutVisibility.get()); } }
@Test public void shouldSearchUsernameWithNoRepos() { String username = "usernameWithoutRepos"; TextView textView = new TextView(application); textView.setText(username); when(githubService.publicRepositories(username)) .thenReturn(Observable.just(Collections.<Repository>emptyList())); mainViewModel.onSearchAction(textView, EditorInfo.IME_ACTION_SEARCH, null); verify(dataListener).onRepositoriesChanged(Collections.<Repository>emptyList()); assertEquals(mainViewModel.infoMessage.get(), application.getString(R.string.text_empty_repos)); assertEquals(mainViewModel.infoMessageVisibility.get(), View.VISIBLE); assertEquals(mainViewModel.progressVisibility.get(), View.INVISIBLE); assertEquals(mainViewModel.recyclerViewVisibility.get(), View.INVISIBLE); }
@Test public void shouldSearchInvalidUsername() { String username = "invalidUsername"; TextView textView = new TextView(application); textView.setText(username); HttpException mockHttpException = new HttpException(Response.error(404, mock(ResponseBody.class))); when(githubService.publicRepositories(username)) .thenReturn(Observable.<List<Repository>>error(mockHttpException)); mainViewModel.onSearchAction(textView, EditorInfo.IME_ACTION_SEARCH, null); verify(dataListener, never()).onRepositoriesChanged(anyListOf(Repository.class)); assertEquals(mainViewModel.infoMessage.get(), application.getString(R.string.error_username_not_found)); assertEquals(mainViewModel.infoMessageVisibility.get(), View.VISIBLE); assertEquals(mainViewModel.progressVisibility.get(), View.INVISIBLE); assertEquals(mainViewModel.recyclerViewVisibility.get(), View.INVISIBLE); }
jobDispatcher .newJobBuilder() .setTag(form.tag.get()) .setRecurring(form.recurring.get()) .setLifetime(form.persistent.get() ? Lifetime.FOREVER : Lifetime.UNTIL_NEXT_BOOT)
@Override public void afterTextChanged(Editable s) { if (!Objects.equals(field.get(), s.toString())) { isInEditMode = true; field.set(s.toString()); isInEditMode = false; } }
@Override public void onPropertyChanged(Observable observable, int i) { if (selectedListener != null) { final ObservableField observableField = (ObservableField) observable; selectedListener.onElementSelected((RadioElementModel) observableField.get()); } } });
@Override public void onPropertyChanged(Observable observable, int i) { showToast(viewModel.toastContent.get()); } });
@Override public void onPropertyChanged(Observable observable, int i) { showToast(viewModel.toastContent.get()); } });
public void doAfterContentChanged() { Log.d(TAG, "doAfterContentChanged() called"); String newContent = content.get(); if (newContent.equals(prevContent)) return; prevContent = newContent; updateRichText.notifyChange(); saveReply(); }
@Override public void onElementSelected(RadioElementModel model) { if (selectedListener != null) { selectedListener.onAnimationSelected(animationNamesMap.get(model.getName().get())); } }
@Override public void onElementSelected(RadioElementModel model) { if (selectedListener != null) { selectedListener.onInterpolatorSelected(interpolatorNamesMap.get(model.getName().get())); } }
@Override public void onPlaybackStateChanged(MusicService.PlaybackState state) { if (musicService == null || state == MusicService.PlaybackState.STOPPED) { adapter.setCurrentAudio(null); } else { adapter.setCurrentAudio(currentAudio.get()); } }
private void setState(ObservableField<QuoteEntity> data) { if (data.get() != null) { state.set(StatefulLayout.CONTENT); } else { state.set(StatefulLayout.EMPTY); } }
@Override public void onPropertyChanged(Observable observable, int i) { getActivity().runOnUiThread(() -> { onCurrentAlbumArtChanged(currentAlbumArt.get()); }); } };
public String getExtendedReasonText() { final String timeText = JoH.niceTimeScalar(since); final String userText = getUsername(); final String reasonText = String.format(getReasonText(reason), userText.length() > 0 ? userText : "Name not set", timeText); final String locationText = GetLocation.getBestLocation(); final String mapText = GetLocation.getMapUrl(); final String signatureText = getString(R.string.automatic_message_from_xdrip); lastExtendedText.set(String.format(getString(R.string.emergency_message_near_format_string), reasonText, locationText, mapText, extra, signatureText).trim()); return lastExtendedText.get(); }
@Test public void setPasswordErrorIfEmpty() { viewModel.username.set(USERNAME); viewModel.password.set(null); viewModel.onLoginClick(); assertThat(viewModel.passwordError.get()).isEqualTo(ERROR_PASSWORD); }
private static <T> TestObserver<String> errorObserver(final RxProperty<T> property) { return Observe.propertyOf(property.getError(), 0, new Function<ObservableField<String>, String>() { @Override public String apply(ObservableField<String> field) throws Exception { return field.get(); } }) .test(); }
@Test public void testValidate_newUserValidPassword_noError() throws Exception { LoginFragmentViewModel model = createBlankViewModel(); model.password.set("Some loinger password"); model.isExistingUserChecked.set(false); model.validateInput(); assertNull(model.passwordError.get()); }