public void ExpenseCreateTest() { using (var lifetime = container.BeginLifetimeScope()) { DefaultCommandBus commandBus = lifetime.Resolve <DefaultCommandBus>(); ICategoryRepository categoryRepository = lifetime.Resolve <ICategoryRepository>(); IMappingEngine mapper = lifetime.Resolve <IMappingEngine>(); Category category = categoryRepository.GetAll().FirstOrDefault(); Expense expense = new Expense() { Amount = 120, Date = DateTime.Now, Category = category, TransactionDesc = "Test transaction." }; CreateOrUpdateExpenseCommand command = mapper.Map <CreateOrUpdateExpenseCommand>(expense); ICommandHandler <CreateOrUpdateExpenseCommand> commnadHandler = lifetime.Resolve <ICommandHandler <CreateOrUpdateExpenseCommand> >(); ICommandResult result = commandBus.Submit(command, commnadHandler); Assert.IsNotNull(result, "Error: Tipo Via Was Not Created by CommandBus"); Assert.IsTrue(result.Success, "Error: Tipo Via Was Not Created by CommandBus"); } }
public ActionResult Save(ExpenseFormModel form) { Category category = categoryRepository.GetById(form.CategoryId); if (ModelState.IsValid) { var command = new CreateOrUpdateExpenseCommand { ExpenseId = form.ExpenseId, Category = category, Date = form.Date, TransactionDesc = form.Transaction, Amount = form.Amount }; var result = commandBus.Submit(command); if (result.Success) { return(RedirectToAction("Index")); } } if (form.ExpenseId == 0) { return(View("Create", form)); } else { return(View("Edit", form)); } }
public void ExpenseUpdateTest() { Expense expense = null; using (var lifetime = container.BeginLifetimeScope()) { IExpenseRepository expenseRepository = lifetime.Resolve <IExpenseRepository>(); DefaultCommandBus commandBus = lifetime.Resolve <DefaultCommandBus>(); IMappingEngine mapper = lifetime.Resolve <IMappingEngine>(); expense = expenseRepository.Get(c => c.Amount == 120); Assert.IsNotNull(expense, "Error: Expense was not found"); expense.Amount = 150; } using (var lifetime = container.BeginLifetimeScope()) { IExpenseRepository expenseRepository = lifetime.Resolve <IExpenseRepository>(); DefaultCommandBus commandBus = lifetime.Resolve <DefaultCommandBus>(); IMappingEngine mapper = lifetime.Resolve <IMappingEngine>(); CreateOrUpdateExpenseCommand command = mapper.Map <CreateOrUpdateExpenseCommand>(expense); ICommandHandler <CreateOrUpdateExpenseCommand> commnadHandler = lifetime.Resolve <ICommandHandler <CreateOrUpdateExpenseCommand> >(); ICommandResult result = commandBus.Submit(command, commnadHandler); Assert.IsNotNull(result, "Error: Expense was not updated"); Assert.IsTrue(result.Success, "Error: Expense was not updated"); } }
public ActionResult Save(ExpenseFormModel form) { if (ModelState.IsValid) { var command = new CreateOrUpdateExpenseCommand { ExpenseId = form.ExpenseId, CategoryId = form.CategoryId, Date = form.Date, Transaction = form.Transaction, Amount = form.Amount }; var result = commandBus.Submit(command); if (result.Success) { return(RedirectToAction("Index")); } } //if fail var categories = categoryRepository.GetAll(); form.Category = categories.ToSelectListItems(form.CategoryId); if (form.ExpenseId == 0) { return(View("Create", form)); } else { return(View("Edit", form)); } }