Пример #1
0
        public async Task Sala_RealizarCadastro_DeveRetornarMensagemBlocoNaoEncontrado()
        {
            var comando = new CriarSalaComando
            {
                CodigoBloco = 99,
                Descricao   = "Teste",
                Laboratorio = true,
                Numero      = 1
            };

            var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota("criar"), comando);

            var mensagemEsperada = $@"Não foi encontrado um bloco com o código {comando.CodigoBloco}.";

            await _testsFixture.TestarRequisicaoComErro(resposta, mensagemEsperada);
        }
Пример #2
0
        public async Task Sala_RealizarCadastro_DeveRetornarMensagemDeCamposObrigatorios()
        {
            var comando = new CriarSalaComando();

            var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota("criar"), comando);

            var erros = new List <string>
            {
                "O campo descrição é obrigatório.",
                "O campo número é obrigatório.",
                "O campo código do bloco é obrigatório.",
                "O campo número é obrigatório."
            };

            await _testsFixture.TestarRequisicaoComErro(resposta, erros);
        }
Пример #3
0
        public async Task <Resposta <SalaViewModel> > Handle(CriarSalaComando request, CancellationToken cancellationToken)
        {
            var erros = _validador.Validar(request);

            if (!string.IsNullOrEmpty(erros))
            {
                return(new Resposta <SalaViewModel>(erros));
            }

            var salaEntidade = _mapper.Map <Sala>(request);

            salaEntidade = await _salaRepositorio.Criar(salaEntidade);

            var salaViewModel = _mapper.Map <SalaViewModel>(salaEntidade);

            return(new Resposta <SalaViewModel>(salaViewModel));
        }
Пример #4
0
        public async Task <IActionResult> Criar([FromBody] CriarSalaComando comando)
        {
            try
            {
                var resultado = await _mediator.Send(comando);

                if (resultado.TemErro())
                {
                    return(BadRequest(resultado.GetErros()));
                }

                return(Ok(resultado.GetResultado()));
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
Пример #5
0
        public async Task Sala_RealizarCadastro_DeveRealizarCadastroComSucesso()
        {
            var comando = new CriarSalaComando
            {
                Descricao   = "Sala 1",
                CodigoBloco = 1,
                Laboratorio = false,
                Numero      = 200
            };

            var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota("criar"), comando);

            resposta.EnsureSuccessStatusCode();

            var dadosResposta = await _testsFixture.RecuperarConteudoRequisicao <SalaViewModel>(resposta);

            dadosResposta.Codigo.Should().BeGreaterThan(0);

            dadosResposta.Descricao.Should().Be(comando.Descricao);

            dadosResposta.Laboratorio.Should().Be(comando.Laboratorio);

            dadosResposta.Numero.Should().Be(comando.Numero);
        }