public async Task EditarCerveja(EditarCervejaDTO.Envio dto) { var cerveja = UnitOfWork.CervejaRepository.GetById(dto.Id); var editada = _mapper.Map <Cerveja>(dto); var command = EditarCervejaCommand.Factory(cerveja, editada); await Bus.SendCommand(command); }
public async Task EditarCervejaHandle_CervejaNaoInformada_RaiseEvent() { var unitOfWork = Substitute.For <IUnitOfWork>(); var eventHandler = Substitute.For <NotificationHandler>(); var mediator = Substitute.For <IMediatorHandler>(); var handler = new CervejaCommandHandler(unitOfWork, mediator, eventHandler); var cerveja = new Cerveja("Cerveja Teste", "Descrição", "Harmonização", "Coloração", "Categoria", "Ingredientes", 5, 0, 4, "Imagem.png"); var command = EditarCervejaCommand.Factory(cerveja, null); await handler.Handle(command, CancellationToken.None); await mediator.ReceivedWithAnyArgs(1).RaiseEvent((Notification)null); }
public async Task EditarCervejaHandle_ObjetoNulo_SaveChangesAsync() { var unitOfWork = Substitute.For <IUnitOfWork>(); var eventHandler = Substitute.For <NotificationHandler>(); var mediator = Substitute.For <IMediatorHandler>(); var handler = new CervejaCommandHandler(unitOfWork, mediator, eventHandler); var cerveja = new Cerveja("Cerveja Teste", "Descrição", "Harmonização", "Coloração", "Categoria", "Ingredientes", 5, 0, 4, "Imagem.png"); var editada = new Cerveja("Cerveja Editada", "Descrição", "Harmonização", "Coloração", "Categoria", "Ingredientes", 5, 0, 4, "Imagem.png"); var command = EditarCervejaCommand.Factory(cerveja, editada); await handler.Handle(command, CancellationToken.None); await unitOfWork.ReceivedWithAnyArgs(1).SaveChangesAsync(); }
public async Task <bool> Handle(EditarCervejaCommand command, CancellationToken cancellationToken) { if (!command.IsValid()) { await NotifyValidationErrors(command); return(false); } var cerveja = command.Cerveja; var editada = command.CervejaEditada; cerveja.Editar(editada.Nome, editada.Descricao, editada.Harmonizacao, editada.Cor, editada.Categoria, editada.Ingredientes, editada.TeorAlcoolico, editada.TemperaturaInicial, editada.TemperaturaFinal); await Task.Run(() => _unitOfwork.CervejaRepository.Update(cerveja)); await Commit(); return(true); }