public async Task DisciplinaCargo_ListarDisciplinasPorCurriculo_DeveRetornarMensagemAnoNaoInformado() { var consulta = new ListarDisciplinaCargoPorCurriculoConsulta { CodigoCurriculo = 1, CodigoTurno = 1, Periodo = EPeriodo.DECIMO, Semestre = ESemestre.PRIMEIRO }; var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota($"listar-por-curriculo"), consulta); await _testsFixture.TestarRequisicaoComErro(resposta, $"O campo ano não foi informado."); }
public async Task DisciplinaCargo_ListarDisciplinasPorCurriculo_DeveRetornarMensagemTurnoNaoEncontrado() { var consulta = new ListarDisciplinaCargoPorCurriculoConsulta { Ano = 2020, CodigoTurno = 99, Periodo = EPeriodo.PRIMEIRO, Semestre = ESemestre.PRIMEIRO, CodigoCurriculo = 1 }; var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota($"listar-por-curriculo"), consulta); await _testsFixture.TestarRequisicaoComErro(resposta, $"Não foi encontrado um turno com o código {consulta.CodigoTurno}."); }
public async Task <IActionResult> ListarDisciplinasCurriculo([FromBody] ListarDisciplinaCargoPorCurriculoConsulta consulta) { try { var resposta = await _mediator.Send(consulta); if (resposta.TemErro()) { return(BadRequest(resposta.GetErros())); } return(Ok(resposta.GetResultado())); } catch (Exception e) { return(BadRequest(e.Message)); } }
public async Task DisciplinaCargo_ListarDisciplinasPorCurriculo_DeveRetornarListaVazia() { var consulta = new ListarDisciplinaCargoPorCurriculoConsulta { Ano = 2020, CodigoTurno = 1, Periodo = EPeriodo.DECIMO, Semestre = ESemestre.PRIMEIRO, CodigoCurriculo = 1 }; var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota($"listar-por-curriculo"), consulta); resposta.EnsureSuccessStatusCode(); var dados = await _testsFixture.RecuperarConteudoRequisicao <List <CargoDisciplinaListarPorCurriculoViewModel> >(resposta); dados.Should().BeEmpty(); }
public async Task DisciplinaCargo_ListarDisciplinasPorCurriculo_DeveRetornarDuasDisciplinas() { var consulta = new ListarDisciplinaCargoPorCurriculoConsulta { Ano = 2020, CodigoTurno = 2, Periodo = EPeriodo.NONO, Semestre = ESemestre.PRIMEIRO, CodigoCurriculo = 1 }; var resposta = await _testsFixture.Client.PostAsJsonAsync(GetRota($"listar-por-curriculo"), consulta); resposta.EnsureSuccessStatusCode(); var dados = await _testsFixture.RecuperarConteudoRequisicao <List <CargoDisciplinaListarPorCurriculoViewModel> >(resposta); dados.Should().HaveCount(2); dados.Should().NotContain(lnq => lnq.Professor != "Cargo 0" && (lnq.Descricao != "Programação orientada a objetos" || lnq.Descricao != "Engenharia de software")); }