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(); }