def _atualiza_aluno(argumentos): aluno_id = "--aluno-id" situacao = "--situacao" nome = "--nome" materia = "--materia" nota = "--nota" aluno = Aluno() try: if aluno_id in argumentos: id_ = _pega_valor(argumentos, aluno_id) Controller(aluno, bd).atualiza(id_) if nome in argumentos: nome_ = _pega_valor(argumentos, nome) aluno.define_nome(nome_) Controller(aluno, bd).atualiza(id_) if situacao in argumentos: situacao_ = _pega_valor(argumentos, situacao) aluno.define_situacao(situacao_) Controller(aluno, bd).atualiza(id_) if materia in argumentos and nota in argumentos: materia_ = _pega_valor(argumentos, materia) nota_ = _pega_valor(argumentos, nota) materias = {materia_: nota_} aluno.atualiza_materias_cursadas(materias) Controller(aluno, bd).atualiza(id_) print(f"Aluno com identificador {id_} atualizado com sucesso.") except Exception: raise
def _tuple_para_aluno(self, linha): (id_, nome, cr, situacao) = linha aluno = Aluno(nome) aluno.define_id(id_) aluno.define_cr(cr) aluno.define_situacao(situacao) return aluno
def _salva_aluno_banco(self, cria_banco, id, nome, cr, situacao): aluno = Aluno(nome) aluno.define_cr(cr) aluno.define_id(id) aluno.define_situacao(situacao) dao = DaoAluno(aluno, cria_banco) dao.salva() return aluno, dao
def test_define_situacao_retorna_aluno_com_situacao_atualizada( self, cria_curso_com_materias): materias = {materia_nome_1: 8, materia_nome_2: 8, materia_nome_3: 8} expected = "aprovado" aluno = Aluno(aluno_nome_1) aluno.inscreve_curso(cria_curso_com_materias) aluno.atualiza_materias_cursadas(materias) aluno.define_situacao(Situacao.aprovado.value) actual = aluno.pega_situacao() assert actual == expected
def test_situacao_nao_pode_ser_fora_dos_valores_definidos(self): aluno = Aluno() situacao = "ausente" expected = f"Situação do aluno '{situacao}' não é válida." with pytest.raises(Exception, match=expected): aluno.define_situacao(situacao)