public void G_パラメータでフィルタできる()
        {
            var mock = Substitute.For <IObserver <SignalWithClassParameter> >();

            var parameterPublishable   = new SignalWithClassParameter.ClassParameter(true, 1);
            var parameterUnpublishable = new SignalWithClassParameter.ClassParameter(true, 1);

            Receiver.Receive(parameterPublishable).Subscribe(mock.OnNext);

            Publisher.Publish(SignalWithClassParameter.Create(parameterPublishable));
            Publisher.Publish(SignalWithClassParameter.Create(parameterUnpublishable));

            mock.Received(1).OnNext(SignalWithClassParameter.Create(parameterPublishable));
            mock.DidNotReceive().OnNext(SignalWithClassParameter.Create(parameterUnpublishable));
        }
        public void F_送信したパラメータを受け取れる()
        {
            var mock = Substitute.For <IObserver <SignalWithClassParameter> >();

            var parameter = new SignalWithClassParameter.ClassParameter(true, 1);

            Receiver.Receive().Subscribe(mock.OnNext);
            Receiver
            .Receive()
            .Subscribe(
                signal =>
            {
                Assert.That(signal.Parameter.BoolValue, Is.True);
                Assert.That(signal.Parameter.IntValue, Is.EqualTo(1));
            }
                );

            Publisher.Publish(SignalWithClassParameter.Create(parameter));
            Publisher.Publish(SignalWithClassParameter.Create(parameter));

            mock.Received(2).OnNext(SignalWithClassParameter.Create(parameter));
        }