public async Task <ExpenditureViewModel> Delete([FromUri] RemoveExpenditureCommand command) { var result = await _commandDispatcher.Execute <RemoveExpenditureCommand, RemoveExpenditureCommand.Result>(command); var expenditures = await _queryDispatcher.Execute <GetExpenditureQuery, GetExpenditureQuery.Result>(new GetExpenditureQuery { CultureId = command.CultureId, UserId = command.UserId }); var accounts = await _queryDispatcher.Execute <GetAccountQuery, GetAccountQuery.Result>(new GetAccountQuery { UserId = command.UserId, CultureId = command.CultureId }); var budgets = await _queryDispatcher.Execute <GetBudgetQuery, GetBudgetQuery.Result>(new GetBudgetQuery { CultureId = command.CultureId, UserId = command.UserId }); return(new ExpenditureViewModel { AccountPresentations = accounts.AccountPresentations, BudgetPresentations = budgets.BudgetPresentations, ExpenditurePresentations = expenditures.ExpenditurePresentations, EffectiveRows = result.EffectiveRows }); }
public async Task RemoveExpenseExpenditure() { var command = new RemoveExpenditureCommand { UserId = new Guid("05541516-ccf1-41f4-b6ac-b2aa7d807b8c"), ExpenditureIds = new List <Guid> { new Guid("714b19c9-7c5b-47f9-9a99-46639db1595d") } }; _db.Setup(x => x.SaveChangesAsync()).ReturnsAsync(1); var result = await _handler.Execute(command); Assert.IsNotNull(result); Assert.AreEqual(result.EffectiveRows, 1); var account = _accounts.First(); Assert.AreEqual(account.Balance, 2000); var budget = _budgets.First(); Assert.AreEqual(budget.Expensed, 0); Assert.AreEqual(budget.Balance, budget.Total); }
public async Task ThrowException() { var command = new RemoveExpenditureCommand { UserId = new Guid("05541516-ccf1-41f4-b6ac-b2aa7d807b8c"), }; _db.Setup(x => x.SaveChangesAsync()).ReturnsAsync(1); var result = await _handler.Execute(command); }