public void QuandoTiverNotificacoes_ResultadoDeveSerNulo_EExisteMensagens() { var livro = new LivroResumidoViewModel(); var notificador = new Notificador(); notificador.AdicionarErro("erro", "mensagem"); var response = new Response <LivroResumidoViewModel>(livro, notificador); response.Mensagens["erro"].Should().Contain("mensagem"); }
public void AdicionarErro_DeveAdicionar() { var notificador = new Notificador(); notificador.AdicionarErro("erro", "mensagem"); notificador.ExistemErros.Should().BeTrue(); notificador.Erros .Should() .ContainEquivalentOf(new Notificacao(TipoNotificacao.Erro, "erro", "mensagem")); }
public void AdicionarErro_ComHttpStatusCode() { var notificador = new Notificador(); notificador.AdicionarErro("erro", "mensagem", HttpStatusCode.NotFound); notificador.ExistemErros.Should().BeTrue(); notificador.Erros .Should() .ContainEquivalentOf(new Notificacao(TipoNotificacao.Erro, "erro", "mensagem")); notificador.StatusCode.Should().BeEquivalentTo(HttpStatusCode.NotFound); }
public async Task BuscarEditoraPorId_DeveRetornarNulo_ENotificar() { var mapper = new Mock <IMapper>(); var notificador = new Notificador(); var query = new Mock <IEditoraRepository>(); query.Setup(x => x.BuscarEditoraPorId(It.IsAny <Guid>())) .Callback(() => notificador.AdicionarErro("editora", "Não Encontrada")); var useCase = new BuscarEditoraPorIdUseCase(query.Object, notificador, mapper.Object); var resultado = await useCase.Executar(Guid.NewGuid()); resultado.Should().BeNull(); notificador.ExistemErros.Should().BeTrue(); }
public async Task Executar_DeveNotificarErro() { var notificadorEsperado = new Notificador(); notificadorEsperado.AdicionarErro("erro", "mensagem"); var useCase = GerarUseCase(out var notificador); _autorRepository .Setup(x => x.ExcluirAutor(It.IsAny <Guid>())) .Callback(() => notificador.AdicionarErro("erro", "mensagem")); await useCase.Executar(Guid.NewGuid()); _autorRepository.Verify(x => x.ExcluirAutor(It.IsAny <Guid>()), Times.Once); notificador.Erros.Should().BeEquivalentTo(notificadorEsperado.Erros); }
public void FormatarResposta_ComErroComStatusCodeNotFound_ObjetoUnico() { var notificador = new Notificador(); notificador.AdicionarErro("erro", "mensagem", HttpStatusCode.NotFound); var responseFormatter = new ResponseFormatter(notificador); var editora = new EditoraViewModel { Id = Guid.NewGuid(), Nome = "Editora", Email = "*****@*****.**", Pais = "Brasil" }; var resultado = responseFormatter.FormatarResposta(TipoRequisicao.Get, editora); resultado.Should().BeOfType <ObjectResult>() .Which.StatusCode.Should().Be((int)HttpStatusCode.NotFound); }
public void FormatarResposta_ComErroSemStatusCode_Lista() { var notificador = new Notificador(); notificador.AdicionarErro("erro", "mensagem"); var responseFormatter = new ResponseFormatter(notificador); var editora = new List <EditoraViewModel> { new() { Id = Guid.NewGuid(), Nome = "Editora", Email = "*****@*****.**", Pais = "Brasil" } }; var resultado = responseFormatter.FormatarResposta(TipoRequisicao.Get, editora); resultado.Should().BeOfType <BadRequestObjectResult>() .Which.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); }