public void A_通常の送受信() { var mock = Substitute.For <IObserver <SignalWithValueTupleParameter> >(); Receiver.Receive().Subscribe(mock.OnNext); Publisher.Publish(SignalWithValueTupleParameter.Create()); Publisher.Publish(SignalWithValueTupleParameter.Create()); mock.Received(2).OnNext(Arg.Any <SignalWithValueTupleParameter>()); }
public void B_異なるインスタンスでも通す() { var mock = Substitute.For <IObserver <SignalWithValueTupleParameter> >(); var signalForPublish = SignalWithValueTupleParameter.Create(); var signalForReceive = SignalWithValueTupleParameter.Create(); Assert.False(ReferenceEquals(signalForPublish, signalForReceive)); Receiver.Receive(signalForReceive).Subscribe(mock.OnNext); Publisher.Publish(signalForPublish); mock.Received().OnNext(signalForPublish); }