Пример #1
0
        private void LoadDatabaseExecute()
        {
            var loadQuery         = new LoadDataForListViewQuery();
            var databaseInfoQuery = new GetCurrentDatabaseConnectionQuery();

            _queryDispatcher.Dispatch <LoadDataForListViewQuery, Result <List <Worker> > >(loadQuery)
            .Tap(result =>
            {
                var personModels = _mapper.Map <List <PersonModel> >(result);
                foreach (var personModel in personModels)
                {
                    Persons.Add(_personViewModelFunc(personModel));
                }
                IsChecked = true;
                ItemCount = Persons.Count;
            })
            .Tap(() =>
            {
                _queryDispatcher.Dispatch <GetCurrentDatabaseConnectionQuery, Result <string> >(databaseInfoQuery)
                .Tap(data => DatabaseConnectionPath = data);
            })
            .Tap(result => { _messageDialogFunc().ShowUserMessage(GetType().Name, $" Loaded {result.Count} items"); })
            .OnFailure(details =>
                       _messageDialogFunc().ShowErrorMessage(GetType().Name, "Error while loading database", details));
        }
 public Result <List <Worker> > Handle(LoadDataForListViewQuery query)
 {
     try
     {
         var data = _unitOfWork.Workers.GetAllWorkersWithEmployers();
         return(Result.Ok(data));
     }
     catch (Exception e)
     {
         return(Result.Fail <List <Worker> >(e.Message));
     }
 }
        public void After_Failed_Transaction_Returns_Failed_Result()
        {
            var command = new LoadDataForListViewQuery();
            var handler = new LoadDataForListViewQueryHandler(_unitOfWorkMock.Object);

            _unitOfWorkMock
            .Setup(m => m.Workers.GetAllWorkersWithEmployers())
            .Returns(() => throw new InvalidOperationException());

            var result = handler.Handle(command);

            Assert.True(result.IsFailure);
        }
        public void After_Successful_Transaction_Return_Success_Result_With_Data()
        {
            var command = new LoadDataForListViewQuery();
            var handler = new LoadDataForListViewQueryHandler(_unitOfWorkMock.Object);

            _unitOfWorkMock
            .Setup(m => m.Workers.GetAllWorkersWithEmployers())
            .Returns(new List <Worker>());

            var result = handler.Handle(command);

            Assert.True(result.IsSuccess);
            Assert.NotNull(result.Value);
        }
 public Task <Result <List <Worker> > > HandleAsync(LoadDataForListViewQuery query)
 {
     throw new NotImplementedException();
 }