Skip to content

Commit b88eea3

Browse files
author
Joachim Hofer
committed
added test against comparator usage
1 parent 3e89145 commit b88eea3

File tree

1 file changed

+21
-0
lines changed

1 file changed

+21
-0
lines changed

rxjava-core/src/main/java/rx/operators/OperationDistinctUntilChanged.java

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -146,6 +146,13 @@ public String call(String s) {
146146
}
147147
};
148148

149+
final Comparator<String> COMPARE_LENGTH = new Comparator<String>() {
150+
@Override
151+
public int compare(String s1, String s2) {
152+
return s1.length() - s2.length();
153+
}
154+
};
155+
149156
@Before
150157
public void before() {
151158
initMocks(this);
@@ -233,5 +240,19 @@ public void testDistinctUntilChangedOfSourceWithExceptionsFromKeySelector() {
233240
inOrder.verify(w, never()).onNext(anyString());
234241
inOrder.verify(w, never()).onCompleted();
235242
}
243+
244+
@Test
245+
public void testDistinctUntilChangedWithComparator() {
246+
Observable<String> src = from("a", "b", "c", "aa", "bb", "c", "ddd");
247+
create(distinctUntilChanged(src, COMPARE_LENGTH)).subscribe(w);
248+
InOrder inOrder = inOrder(w);
249+
inOrder.verify(w, times(1)).onNext("a");
250+
inOrder.verify(w, times(1)).onNext("aa");
251+
inOrder.verify(w, times(1)).onNext("c");
252+
inOrder.verify(w, times(1)).onNext("ddd");
253+
inOrder.verify(w, times(1)).onCompleted();
254+
inOrder.verify(w, never()).onNext(anyString());
255+
verify(w, never()).onError(any(Throwable.class));
256+
}
236257
}
237258
}

0 commit comments

Comments
 (0)