public void Should_set_respones_value_to_wait_handler_and_set_the_wait_handler()
        {
            // Arrange
            InternalDependencies.RpcQueueHelper = Substitute.For<IRpcQueueHelper>();
            var client = new BurrowRpcClientCoordinator<ISomeService>(null, Substitute.For<IRpcRouteFinder>());

            var res = new RpcResponse
            {
                RequestId = Guid.NewGuid()
            };
            var handlers = client.GetCachedWaitHandlers();
            var wait = new RpcWaitHandler();
            handlers.TryAdd(res.RequestId, wait);

            // Action
            Task.Factory.StartNew(() => client.ReceiveResponse(res));

            // Assert
            wait.WaitHandle.WaitOne();
            Assert.AreEqual(res, wait.Response);
        }
Esempio n. 2
0
        public void Should_set_respones_value_to_wait_handler_and_set_the_wait_handler()
        {
            // Arrange
            InternalDependencies.RpcQueueHelper = Substitute.For <IRpcQueueHelper>();
            var client = new BurrowRpcClientCoordinator <ISomeService>(null, Substitute.For <IRpcRouteFinder>());

            var res = new RpcResponse
            {
                RequestId = Guid.NewGuid()
            };
            var handlers = client.GetCachedWaitHandlers();
            var wait     = new RpcWaitHandler();

            handlers.TryAdd(res.RequestId, wait);

            // Action
            Task.Factory.StartNew(() => client.ReceiveResponse(res));

            // Assert
            wait.WaitHandle.WaitOne();
            Assert.AreEqual(res, wait.Response);
        }