public async Task Send_request_for_navigation_unit_test()
        {
            var _navigateRequestRepository = new Mock <INavigateRequestRepository>();
            var _navigationRequestService  = new Mock <INavigationRequestService>();
            var _mvxNavigationService      = new Mock <IMvxNavigationService>();
            var _messageRepository         = new Mock <IMessageRepository>();

            var chatParematers = _fixture.Create <ChatParameters>();

            var sut = new ChatViewModel(
                _navigateRequestRepository.Object,
                _navigationRequestService.Object,
                _messageRepository.Object,
                _mvxNavigationService.Object
                );

            await sut.PrepareAsync(chatParematers);

            await sut.SendNavigationRequest();

            _navigationRequestService.Verify(v => v.InitiatNavigationRequest(It.IsAny <NavigateRequest>()));
            // TODO: figure out the parameter meaning of following line, why null?
            _mvxNavigationService.Verify(v => v.Navigate <RequestViewModel, NavigateRequestParameters>(It.Is <NavigateRequestParameters>(c => c.Chat == chatParematers.Chat), null));
        }