From 0cb51c08baeace06c7639c4e9c98c78a1b5955a0 Mon Sep 17 00:00:00 2001 From: Ron Shapiro <shapiro.rd@gmail.com> Date: Thu, 14 Aug 2014 10:57:07 -0400 Subject: [PATCH] Clarify OperatorTextViewInputTest methods --- .../operators/OperatorTextViewInputTest.java | 31 +++++++++++++------ 1 file changed, 22 insertions(+), 9 deletions(-) diff --git a/src/test/java/rx/android/operators/OperatorTextViewInputTest.java b/src/test/java/rx/android/operators/OperatorTextViewInputTest.java index c1c74aa3..8d085597 100644 --- a/src/test/java/rx/android/operators/OperatorTextViewInputTest.java +++ b/src/test/java/rx/android/operators/OperatorTextViewInputTest.java @@ -63,7 +63,28 @@ private static EditText createEditText(final String value) { public void testOverloadedMethodDefaultsWithoutInitialValue() { final TextView input = createTextView("initial"); final Observable<TextView> observable = ViewObservable.text(input); - runWithoutInitialValueTest(input, observable); + final Observer<TextView> observer = mock(Observer.class); + final Subscription subscription = observable.subscribe(new TestObserver<TextView>(observer)); + + final InOrder inOrder = inOrder(observer); + + inOrder.verify(observer, never()).onNext(any(TextView.class)); + + input.setText("1"); + inOrder.verify(observer, times(1)).onNext(input); + + input.setText("2"); + inOrder.verify(observer, times(1)).onNext(input); + + input.setText("3"); + inOrder.verify(observer, times(1)).onNext(input); + + subscription.unsubscribe(); + input.setText("4"); + inOrder.verify(observer, never()).onNext(any(TextView.class)); + + inOrder.verify(observer, never()).onError(any(Throwable.class)); + inOrder.verify(observer, never()).onCompleted(); } @Test @@ -71,14 +92,6 @@ public void testOverloadedMethodDefaultsWithoutInitialValue() { public void testWithoutInitialValue() { final TextView input = createTextView("initial"); final Observable<TextView> observable = ViewObservable.text(input, false); - runWithoutInitialValueTest(input, observable); - } - - /** - * Helper method to run {@link #testOverloadedMethodDefaultsWithoutInitialValue} and - * {@link #testWithoutInitialValue} which test the same functionality. - */ - private void runWithoutInitialValueTest(final TextView input, final Observable<TextView> observable) { final Observer<TextView> observer = mock(Observer.class); final Subscription subscription = observable.subscribe(new TestObserver<TextView>(observer));