public async Task <EditoraViewModel> Executar(Guid id, AtualizarEditoraViewModel viewModel) { if (viewModel.Id != id) { _notificador.AdicionarErro("id", "Id informado não corresponde ao da rota"); return(null); } var editora = _mapper.Map <Editora>(viewModel); await _editoraRepository.AtualizarEditora(editora); return(_notificador.ExistemErros ? null : _mapper.Map <EditoraViewModel>(editora)); }
public void Mapeamento_DeveMapear_AtualizarEditoraViewModel() { var esperado = EditoraBogus.GerarEditora(); var atualizarEditoraCommand = new AtualizarEditoraViewModel { Id = esperado.Id, Nome = esperado.Nome, Email = esperado.Email, Pais = esperado.Pais }; var resultado = _mapper.Map <Editora>(atualizarEditoraCommand); resultado.Should().BeEquivalentTo(esperado); }
// [ProducesResponseType(typeof(Response<EditoraViewModel>), (int)HttpStatusCode.Accepted)] // [ProducesResponseType(typeof(Response<>), (int)HttpStatusCode.BadRequest)] // [ProducesResponseType(typeof(Response<>), (int)HttpStatusCode.NotFound)] public async Task <IActionResult> Put(Guid id, [FromBody] AtualizarEditoraViewModel viewModel) { var editora = await _atualizarEditoraUseCase.Executar(id, viewModel); return(_formatter.FormatarResposta(TipoRequisicao.Put, editora)); }