public void TestRealTimeReadRequest()
        {
            var data      = "";
            var dataBlock = new DataBlock {
                Data = "data"
            };
            var readRequest = new CallbackRealTimeReadAccessRequest(0, 0, 100, (s => data = s));

            dataBlock.Accept(readRequest);

            Assert.Equal("data", data);
        }
        public void TestReadRequest()
        {
            var readObserverMock = new Mock <IObserver <string> >();

            readObserverMock.Setup(m => m.OnNext("data"));
            var dataBlock = new DataBlock {
                Data = "data"
            };
            var readRequest = new ObservableReadAccessRequest(1, 0);

            readRequest.Subscribe(readObserverMock.Object);
            dataBlock.Accept(readRequest);

            readObserverMock.VerifyAll();
        }
        public void TestWriteRequest()
        {
            var writeObserverMock = new Mock <IObserver <bool> >();

            writeObserverMock.Setup(m => m.OnNext(true));
            var dataBlock = new DataBlock {
                Data = "data1"
            };
            var writeRequest = new ObservableWriteAccessRequest(0, 1, "data2");

            writeRequest.Subscribe(writeObserverMock.Object);

            dataBlock.Accept(writeRequest);

            Assert.Equal("data2", dataBlock.Data);
            writeObserverMock.VerifyAll();
        }