public async Task Deve_Retornar_Usuario_Solicitante_Quando_Requisitar_Novo_Cadastro_Usuario_Solicitante() { //Arrange var novoNumeroProtocolo = Guid.NewGuid().ToString(); var usuarioSolicitante = FakeData.SolicitarAtendimentoCommandValido; usuarioSolicitanteServico.ConsultarUsuarioSolicitantePorCPF(Arg.Any <string>()) .Returns(_ => Result <UsuarioSolicitante> .Fail("")); protocoloServico.GerarNumeroProtocolo() .Returns(_ => Result <string> .Ok(novoNumeroProtocolo)); protocoloServico.RegistrarNovoProtocolo(Arg.Any <Protocolo>()) .Returns(_ => Result.Ok()); mediator.Send(Arg.Any <RegistrarNovoUsuarioSolicitanteCommand>()) .Returns(_ => Result <RegistrarNovoUsuarioSolicitanteResponse> .Ok(new RegistrarNovoUsuarioSolicitanteResponse { CPFSolicitante = usuarioSolicitante.CPFSolicitante, EmailSolicitante = usuarioSolicitante.EmailSolicitante })); //Act var sut = new SolicitarAtendimentoHandler(mediator, protocoloServico, usuarioSolicitanteServico); var response = await sut.Handle(usuarioSolicitante, default(CancellationToken)).ConfigureAwait(false); protocoloServico.Received().RegistrarNovoProtocolo(Arg.Any <Protocolo>()).GetAwaiter(); response.Value.NovoNumeroProtocolo.Should().Be(novoNumeroProtocolo); }
public async Task Deve_Retornar_Falha_Quando_GerarNumeroProtocolo_Lancar_Execessao() { //Arrange protocoloServico.GerarNumeroProtocolo() .Returns(_ => Task.FromException(new Exception())); usuarioSolicitanteServico.ConsultarUsuarioSolicitantePorCPF(Arg.Any <string>()) .Returns(_ => Result <UsuarioSolicitante> .Fail("")); mediator.Send(Arg.Any <RegistrarNovoUsuarioSolicitanteCommand>()) .Returns(_ => Result <RegistrarNovoUsuarioSolicitanteResponse> .Fail("")); var sut = new SolicitarAtendimentoHandler(mediator, protocoloServico, usuarioSolicitanteServico); //Act var response = await sut.Handle(FakeData.SolicitarAtendimentoCommandValido, default(CancellationToken)).ConfigureAwait(false); //Assert Assert.Multiple(() => { Assert.IsNotNull(response); Assert.IsInstanceOf <Result <SolicitarAtendimentoResponse> >(response); Assert.IsNull(response.Value); }); response.IsFailure.Should().BeTrue(); response.Messages.Count.Should().Be(1); }
public async Task Deve_Falhar_Quando_RegistrarNovoProtocolo_Retonar_Falha() { //Arrange var novoNumeroProtocolo = Guid.NewGuid().ToString(); var usuarioSolicitante = FakeData.SolicitarAtendimentoCommandValido; protocoloServico.GerarNumeroProtocolo() .Returns(_ => Result <string> .Ok(novoNumeroProtocolo)); protocoloServico.RegistrarNovoProtocolo(Arg.Any <Protocolo>()) .Returns(_ => Result.Fail("")); usuarioSolicitanteServico.ConsultarUsuarioSolicitantePorCPF(Arg.Any <string>()).Returns(_ => Result <UsuarioSolicitante> .Fail("")); mediator.Send(Arg.Any <RegistrarNovoUsuarioSolicitanteCommand>()) .Returns(_ => Result <RegistrarNovoUsuarioSolicitanteResponse> .Ok(new RegistrarNovoUsuarioSolicitanteResponse { EmailSolicitante = usuarioSolicitante.EmailSolicitante })); //Act var sut = new SolicitarAtendimentoHandler(mediator, protocoloServico, usuarioSolicitanteServico); var response = await sut.Handle(FakeData.SolicitarAtendimentoCommandValido, default(CancellationToken)).ConfigureAwait(false); //Assert protocoloServico.Received().RegistrarNovoProtocolo(Arg.Any <Protocolo>()).GetAwaiter(); Assert.Multiple(() => { Assert.IsNotNull(response); Assert.IsInstanceOf <Result <SolicitarAtendimentoResponse> >(response); Assert.IsNull(response.Value); Assert.IsTrue(response.IsFailure); Assert.AreEqual(1, response.Messages.Count); }); }
public async Task Deve_Retornar_Falha_Quando_Request_Nao_Contem_Nome() { //Arrange var handler = new SolicitarAtendimentoHandler(mediator, protocoloServico, usuarioSolicitanteServico); //Act var response = await handler.Handle(FakeData.SolicitarAtendimentoCommandSemNome, default(CancellationToken)).ConfigureAwait(false); //Assert Assert.Multiple(() => { Assert.IsNotNull(response); Assert.IsInstanceOf <Result <SolicitarAtendimentoResponse> >(response); Assert.IsNull(response.Value); Assert.IsTrue(response.IsFailure); Assert.AreEqual(response.Messages.Count, 2); }); }
public async Task Deve_Retornar_Falha_Quando_Consultar_Usuario_Requisicao_Cadastro_Retornar_Null() { //Arrange usuarioSolicitanteServico.ConsultarUsuarioSolicitantePorCPF(Arg.Any <string>()).Returns(_ => Result <UsuarioSolicitante> .Fail("")); protocoloServico.GerarNumeroProtocolo().Returns(_ => Result <string> .Ok(Guid.NewGuid().ToString())); //Act var handler = new SolicitarAtendimentoHandler(mediator, protocoloServico, usuarioSolicitanteServico); var response = await handler.Handle(FakeData.SolicitarAtendimentoCommandValido, default(CancellationToken)).ConfigureAwait(false); //Assert //Assert Assert.Multiple(() => { Assert.IsNotNull(response); Assert.IsInstanceOf <Result <SolicitarAtendimentoResponse> >(response); Assert.IsNull(response.Value); }); response.IsFailure.Should().BeTrue(); response.Messages.Count.Should().Be(1); }