Beispiel #1
0
        public async Task DisciplinaCurriculo_RealizarEdicao_DeveRetornarMensagemCodigoDisciplinaPreRequisitoNaoInformado()
        {
            var comando = new EditarCurriculoDisciplinaComando
            {
                Codigo               = 1,
                CodigoTipo           = 1,
                AulasSemanaisPratica = 3,
                AulasSemanaisTeorica = 2,
                CodigoCurriculo      = 1,
                CodigoDisciplina     = 1,
                Periodo              = (int)EPeriodo.PRIMEIRO,
                PreRequisitos        = new List <DisciplinCurriculoPreRequisitoaViewModel>
                {
                    new DisciplinCurriculoPreRequisitoaViewModel
                    {
                        CodigoTipo       = 1,
                        CodigoDisciplina = 1
                    }
                }
            };

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

            var erros = new List <string>
            {
                "Não foi informado o campo código da disciplina do currículo para algum pré-requisito.",
                "Existem pré-requisitos com o código de disciplina do currículo diferente do selecionado."
            };

            await _testsFixture.TestarRequisicaoComErro(resposta, erros);
        }
Beispiel #2
0
        public async Task <IActionResult> Editar([FromBody] EditarCurriculoDisciplinaComando comando)
        {
            try
            {
                var resposta = await _mediator.Send(comando);

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

                return(Ok(resposta.GetResultado()));
            }
            catch (Exception e)
            {
                return(BadRequest(e.Message));
            }
        }
Beispiel #3
0
        public async Task DisciplinaCurriculo_RealizarEdicao_DeveRetornarMensagemDisciplinaJaAdicionadaNoCurriculo()
        {
            var comando = new EditarCurriculoDisciplinaComando
            {
                Codigo               = 2,
                CodigoTipo           = 1,
                AulasSemanaisPratica = 8,
                AulasSemanaisTeorica = 2,
                CodigoCurriculo      = 1,
                CodigoDisciplina     = 1,
                Periodo              = (int)EPeriodo.PRIMEIRO
            };

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

            var mensagemErroEsperada = "Disciplina já adicionada neste currículo.";

            await _testsFixture.TestarRequisicaoComErro(resposta, mensagemErroEsperada);
        }
Beispiel #4
0
        public async Task DisciplinaCurriculo_RealizarEdicao_DeveRealizarAtualizarComSucesso()
        {
            var comando = new EditarCurriculoDisciplinaComando
            {
                Codigo               = 1,
                CodigoTipo           = 1,
                AulasSemanaisPratica = 3,
                AulasSemanaisTeorica = 2,
                CodigoCurriculo      = 1,
                CodigoDisciplina     = 1,
                Periodo              = (int)EPeriodo.PRIMEIRO,
                PreRequisitos        = new List <DisciplinCurriculoPreRequisitoaViewModel>
                {
                    new DisciplinCurriculoPreRequisitoaViewModel
                    {
                        CodigoCurriculoDisciplina = 1,
                        CodigoDisciplina          = 1,
                        CodigoTipo          = 1,
                        DescricaoDisciplina = "Teste de pre requisito"
                    }
                }
            };

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

            resposta.EnsureSuccessStatusCode();

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

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

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

            dadosResposta.PreRequisitos.Should().HaveCount(1);

            dadosResposta.PreRequisitos.Should().NotContain(lnq => lnq.CodigoCurriculoDisciplina != 1 &&
                                                            lnq.CodigoDisciplina != 1 &&
                                                            lnq.CodigoTipo != 1 &&
                                                            lnq.DescricaoDisciplina != "Teste de pre requisito");
        }
Beispiel #5
0
        public async Task DisciplinaCurriculo_RealizarEdicao_DeveRetornarMensagemDeErroCamposObrigatorios()
        {
            var comando = new EditarCurriculoDisciplinaComando();

            comando.AulasSemanaisPratica = -1;
            comando.AulasSemanaisTeorica = -1;

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

            var erros = new List <string>
            {
                "O campo período é obrigatório.",
                "O campo código da disciplina é obrigatório.",
                "O campo código do currículo é obrigatório.",
                "O campo aulas semanais teóricas é obrigatório.",
                "O campo aulas semanais práticas é obrigatório.",
                "O campo disciplina tipo é obrigatório.",
                "O campo código da disciplina do currículo é obrigatório",
            };

            await _testsFixture.TestarRequisicaoComErro(resposta, erros);
        }
Beispiel #6
0
        public async Task DisciplinaCurriculo_RealizarEdicao_DeveRetornarMensagemDeErroDisciplinaECurriculoNaoEncontrado()
        {
            var comando = new EditarCurriculoDisciplinaComando
            {
                Codigo               = 1,
                CodigoTipo           = 1,
                AulasSemanaisPratica = 4,
                AulasSemanaisTeorica = 4,
                CodigoCurriculo      = 99,
                CodigoDisciplina     = 99,
                Periodo              = (int)EPeriodo.NONO
            };

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

            var erros = new List <string>
            {
                $"Não foi encontrado uma disciplina com o código {comando.CodigoDisciplina}.",
                $"Não foi encontrado um currículo com o código {comando.CodigoCurriculo}."
            };

            await _testsFixture.TestarRequisicaoComErro(resposta, erros);
        }