public async Task AlterarImagem(int id, CervejaImagemDTO dto) { var cerveja = await _repCerveja.RecuperarPorIdAsync(id); if (cerveja == null) { throw new Exception("Cerveja não encontrada."); } var cervejaImagem = await _repCervejaImagem.RecuperarPorIdAsync(id); if (cervejaImagem == null) { cervejaImagem = new CervejaImagem { Id = id }; dto.ConverterParaCervejaImagem(cervejaImagem); await _repCervejaImagem.InserirAsync(cervejaImagem); } else { dto.ConverterParaCervejaImagem(cervejaImagem); _repCervejaImagem.Alterar(cervejaImagem); } _repCerveja.Alterar(cerveja); await Persistir(); _eventoNotificarAlteracaoCerveja.Publicar(cerveja); }
public async Task AlterarImagem_passando_cerveja_que_tem_imagem_deve_alterar_e_chamar_rabbit() { var id = 1; var dto = new CervejaImagemDTO(); var cerveja = new Cerveja(); A.CallTo(() => _repCerveja.RecuperarPorIdAsync(id)).Returns(cerveja); var cervejaImagem = new CervejaImagem(); A.CallTo(() => _repCervejaImagem.RecuperarPorIdAsync(id)).Returns(cervejaImagem); await _aplicCerveja.AlterarImagem(id, dto); A.CallTo(() => _repCervejaImagem.Alterar(A <CervejaImagem> ._)).MustHaveHappened(); A.CallTo(() => _unidadeDeTrabalho.Persistir()).MustHaveHappened(); A.CallTo(() => _eventoNotificarAlteracaoCerveja.Publicar(A <Cerveja> ._)).MustHaveHappened(); }