public CustomerViewModel Add(CustomerViewModel customerVM) { CustomerViewModel viewModel = null; var model = _mapper.Map <Customer>(customerVM); var validation = new CustomerInsertValidation(_customerRepository).Validate(model); if (!validation.IsValid) { _domainNotification.AddNotifications(validation); return(viewModel); } /* * EXEMPLO COM TRANSAÇÃO: * Adicione a função "BeginTransaction()": _unitOfWork.BeginTransaction(); * Utilize transação somente se realizar mais de uma operação no banco de dados ou banco de dados distintos */ _customerRepository.Add(model); _unitOfWork.Commit(); viewModel = _mapper.Map <CustomerViewModel>(model); return(viewModel); }
public CustomerValidationTest() { _customerRepositoryMock = new Mock <ICustomerRepository>(); CustomerAddress customerAddress = null; _customerRepositoryMock.Setup(x => x.GetByNameAsync(It.IsAny <string>())) .ReturnsAsync(customerAddress); Validator = new CustomerInsertValidation(_customerRepositoryMock.Object); this.entity = new Customer(id: 1, addressId: 1, name: "fulano de tal"); }