我写了测试来观察Distinc
操作
public class Test: ReactiveTest {
[Fact]
public void Observe_distint_nonDistinc() {
var scheduler = new TestScheduler();
var source = scheduler.CreateHotObservable(
OnNext(100, "a"),
OnNext(110, "b"),
OnNext(200, "a"),
OnNext(220, "c"),
OnNext(221, "a")
);
var results = scheduler.CreateObserver<string>();
source.Distinct().Subscribe(results);
scheduler.AdvanceBy(1000);
results.Messages.AssertEqual(OnNext(100,"a"),OnNext(110,"b"),OnNext(220,"c"));
}
}
测试通过了,但是我不确定如何同时观察重复项。我尝试了一些组合,Publish
但CombineLatest
我觉得它们不值得一提。我的duplicate
流应该只有 2 个项目OnNext(200,"a"), OnNext(221,"a")