Пример #1
0
        public ICommandResult Handle(DeleteServerCommand command)
        {
            command.Validate();
            if (command.IsInvalid)
            {
                return(new DefaultCommandResult(CommandResultStatus.InvalidCommand, command.Notifications));
            }

            try
            {
                var server = _serverRepository.GetById(command.ServerId);
                if (server == null)
                {
                    return(new DefaultCommandResult(CommandResultStatus.InvalidData, "Nenhum servidor foi localizado"));
                }


                _serverRepository.Delete(server);
                return(new DefaultCommandResult(server.Id));
            }
            catch (Exception e)
            {
                Console.WriteLine($"Fail to execute DeleteServerHandler. Fail stack ===> {e.ToString()}");
                return(new DefaultCommandResult(CommandResultStatus.Exception));
            }
        }
Пример #2
0
        public IActionResult Delete([FromServices] ServerHandler handler, [FromRoute] Guid serverId)
        {
            var command  = new DeleteServerCommand(serverId);
            var response = (DefaultCommandResult)handler.Handle(command);

            return(this.DefaultCommandResultToActionResult(response));
        }
        public DeleteServerHandlerTest()
        {
            _dataContextMock             = new DataContextMock();
            _invalidCommand              = new DeleteServerCommand(new Guid());
            _validCommandWithNotExistsId = new DeleteServerCommand(Guid.NewGuid());
            var serverSalvedId = _dataContextMock.Servers.FirstOrDefault().Id;

            _validCommand = new DeleteServerCommand(serverSalvedId);
        }
Пример #4
0
        public async Task <IActionResult> Delete(int id, CancellationToken cancellationToken)
        {
            var command = new DeleteServerCommand {
                Id = id
            };
            await Mediator.Send(command, cancellationToken);

            return(NoContent());
        }
Пример #5
0
        public async Task Retornar_erro_quando_identificador_servidor_for_vazio()
        {
            var command = new DeleteServerCommand(Guid.Empty);

            var result = await _handler.Handle(command, CancellationToken.None);

            result.SuccessData.Should().BeFalse();
            result.FailData.Should().Be("Identificador do servidor é obrigatório.");
        }
Пример #6
0
        public async Task Retornar_falha_quando_nao_encontrar_servidor()
        {
            var serverId = Guid.NewGuid();
            var command  = new DeleteServerCommand(serverId);

            var result = await _handler.Handle(command, CancellationToken.None);

            result.SuccessData.Should().BeFalse();
            result.FailData.Should().Be($"Não foi encontrado servidor com identificador {serverId}");
        }
Пример #7
0
        public async Task Retornar_sucesso_quando_excluir_servidor()
        {
            _serverRepositoryMock.Setup(x => x.Delete(It.IsAny <Guid>())).Returns(true);
            var command = new DeleteServerCommand(Guid.NewGuid());

            var result = await _handler.Handle(command, CancellationToken.None);

            result.SuccessData.Should().BeTrue();
            _serverRepositoryMock.Verify(x => x.SaveChangesAsync(), Times.Once());
        }