Esempio n. 1
0
        public async Task <IActionResult> Atualizar([FromBody] AtualizarCargoComando 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));
            }
        }
Esempio n. 2
0
        public async Task Cargo_RealizarAtualizacao_DeveRealizarAtualizacaoSemProfessorComSucesso()
        {
            var comando = new AtualizarCargoComando
            {
                Ano      = 2020,
                Codigo   = 3,
                Edital   = 99,
                Numero   = 99,
                Semestre = ESemestre.SEGUNDO
            };

            var cargo = await RealizarRequisicaoCargo <CargoViewModel, AtualizarCargoComando>("editar", HttpMethod.Put, comando);

            ValidarCargo(cargo);

            cargo.Ano.Should().Be(comando.Ano);
            cargo.Codigo.Should().Be(comando.Codigo);
            cargo.Edital.Should().Be(comando.Edital);
            cargo.Numero.Should().Be(comando.Numero);
            cargo.Semestre.Should().Be(comando.Semestre);
            cargo.CodigoProfessor.Should().BeNull();
        }
Esempio n. 3
0
        public async Task Cargo_RealizarAtualizacaoCargoJaExistente_DeveRetornarMensagensDeErro()
        {
            var comando = new AtualizarCargoComando
            {
                Codigo          = 2,
                Ano             = DateTime.Now.Year,
                CodigoProfessor = 1,
                Edital          = 1,
                Numero          = 1,
                Semestre        = ESemestre.PRIMEIRO
            };

            var mensagemEsperada = $@"Já existe um cargo com os mesmos valores para os campos semestre, ano, edital e número."
                                   .RemoverEspacosVazios();

            var resposta = await _testsFixture.Client.PutAsJsonAsync(GetRota("editar"), comando);

            var mensagemErroResposta = await resposta.Content.ReadAsStringAsync();

            resposta.StatusCode.Should().Be(HttpStatusCode.BadRequest);

            mensagemErroResposta.RemoverEspacosVazios().Should().Be(mensagemEsperada);
        }
Esempio n. 4
0
        public async Task Cargo_RealizarAtualizacaoCargoInvalido_DeveRetornarMensagensDeErro()
        {
            var comando = new AtualizarCargoComando();

            comando.CodigoProfessor = 99;
            comando.Codigo          = 99;

            var mensagemEsperada = $@"O campo ano é obrigatório.
                                     O campo edital é obrigatório.
                                     O campo número é obrigatório.
                                     O campo semestre é obrigatório.
                                     Não foi encontrado um professor com o código {comando.Codigo}.
                                     Não foi encontrado um cargo com o código {comando.Codigo}."
                                   .RemoverEspacosVazios();

            var resposta = await _testsFixture.Client.PutAsJsonAsync(GetRota("editar"), comando);

            var mensagemErroResposta = await resposta.Content.ReadAsStringAsync();

            resposta.StatusCode.Should().Be(HttpStatusCode.BadRequest);

            mensagemErroResposta.RemoverEspacosVazios().Should().Be(mensagemEsperada);
        }