Ejemplo n.º 1
0
        public async Task <IActionResult> ExcluirPerfilAsync(Guid id)
        {
            var command = new ExcluirPerfilCommand(id);
            var result  = await _mediator.Send(command);

            return(this.VerificarErros(_notifications, result));
        }
        public async Task Handle_deve_verificar_se_comando_invalido_e_retornar_false()
        {
            //arrange
            var command = new ExcluirPerfilCommand(Guid.Empty);
            //act
            var result = await _handler.Handle(command, new System.Threading.CancellationToken());

            //assert

            result.Success.Should().BeFalse();
        }
        public async Task Handle_deve_retornar_falso_se_perfil_nao_existir_e_disparar_notificacao_de_dominio()
        {
            //arrange
            var command = new ExcluirPerfilCommand(Guid.NewGuid());

            //act
            var result = await _handler.Handle(command, new System.Threading.CancellationToken());

            //assert
            result.Success.Should().BeFalse();
            _mediator.Verify(m => m.Publish(It.IsAny <DomainNotification>(), default), Times.Once());
        }
        public async Task Handle_deve_retornar_falso_se_perfil_nao_existir()
        {
            //arrange
            var command = new ExcluirPerfilCommand(Guid.NewGuid());

            //act
            var result = await _handler.Handle(command, new System.Threading.CancellationToken());

            //assert

            result.Success.Should().BeFalse();
        }
        public async Task Deve_Retornar_False_Ao_ExcluirPerfil_Em_Uso()
        {
            //arrange
            var command = new ExcluirPerfilCommand(Guid.NewGuid());

            _perfilRepositoryMock.Setup(p => p.ObterPorIdAsync(It.IsAny <Guid>())).ReturnsAsync(TestBuilder.PerfilFalso());
            _service.Setup(s => s.DeletarPerfilAsync(It.IsAny <Perfil>())).ReturnsAsync(false);

            //act
            var result = await _handler.Handle(command, new System.Threading.CancellationToken());

            //assert
            result.Success.Should().BeFalse();
        }
        public async Task Handle_deve_retornar_verdadeiro_se_excluir_o_perfil_com_sucesso()
        {
            //arrange
            var command = new ExcluirPerfilCommand(Guid.NewGuid());

            _uow.Setup(u => u.Commit()).ReturnsAsync(CommandResponse.Ok);
            _service.Setup(s => s.DeletarPerfilAsync(It.IsAny <Perfil>())).ReturnsAsync(true);
            _perfilRepositoryMock.Setup(p => p.ObterPorIdAsync(It.IsAny <Guid>())).ReturnsAsync(TestBuilder.PerfilFalso());

            //act
            var result = await _handler.Handle(command, new System.Threading.CancellationToken());

            //assert
            result.Success.Should().BeTrue();
            _mediator.Verify(m => m.Publish(It.IsAny <PerfilDeletadoEvent>(), default), Times.Once());
        }