private static CoreLink GenerateCoreLink(ResponseMessage response)
        {
            IConverseFlatBuffersClient converseClient = GenerateConverseClient(response);

            var coreLink = new CoreLink(converseClient);

            return(coreLink);
        }
        public async Task TimesOut()
        {
            var conv = new CommandConversation(CommandType.Run);

            var response = StateResponseBuilder.Build(StateType.Paused);

            var converseClientMock = new Mock <IConverseFlatBuffersClient>();

            converseClientMock.Setup(client =>
                                     client.SendQuery <CommandRequest, ResponseMessage>(Conversation.Handler, It.IsAny <CommandRequest>()))
            .Callback(() => Thread.Sleep(WaitMs * 2))
            .Returns(response);
            IConverseFlatBuffersClient converseClient = converseClientMock.Object;

            var coreLink = new CoreLink(converseClient);

            await Assert.ThrowsAsync <TaskTimeoutException <StateResponse> >(() => coreLink.Request(conv, WaitMs));
        }