def _cria_curso(argumentos): nome_parametro = "--nome" materias_parametro = "--materias" numero_argumentos = 8 if nome_parametro in argumentos and materias_parametro in argumentos \ and len(argumentos) == numero_argumentos: try: nome = _pega_valor(argumentos, nome_parametro) materia_1 = _pega_valor(argumentos, materias_parametro) materia_2 = _pega_valor(argumentos, materias_parametro, 2) materia_3 = _pega_valor(argumentos, materias_parametro, 3) curso = Curso(nome) controller_curso = Controller(curso, bd) controller_curso.salva() registro = controller_curso.pega_registro_por_nome(nome) curso_id = registro.pega_id() controller = Controller(Materia(None), bd) for materia in [materia_1, materia_2, materia_3]: registro = controller.pega_registro_por_nome(materia) materia_id = registro.pega_id() curso.atualiza_materias(Materia(materia)) Controller(AssociaCursoMateria(curso_id, materia_id), bd).salva() print(f"Curso de {curso.pega_nome()} criado.") except Exception: raise else: raise ListaParametrosInvalida(LISTA_PARAMETROS_INVALIDA)
def test_curso_criado_banco_dados(self, cria_banco): curso_id = 1 expected = Curso(curso_nome_1).pega_nome() controller = Controller(Curso(curso_nome_1), cria_banco) controller.salva() curso = controller.pega_registro_por_id(curso_id) actual = curso.pega_nome() assert actual == expected
def _cria_aluno(argumentos): nome_parametro = "--nome" numero_parametros = 4 if nome_parametro in argumentos and len(argumentos) == numero_parametros: nome = _pega_valor(argumentos, nome_parametro) aluno = Aluno(nome) controller = Controller(aluno, bd) controller.salva() print(f"Aluno {nome} criado com sucesso.") else: raise ListaParametrosInvalida(LISTA_PARAMETROS_INVALIDA)
def test_curso_associado_materia_criado_banco_dados(self, cria_banco): associacao_id = 1 curso_id = 1 materia_id = 1 expected = [tuple((associacao_id, curso_id, materia_id))] Controller(Curso(curso_nome_1), cria_banco).salva() Controller(Materia(materia_nome_1), cria_banco).salva() controller = Controller(AssociaCursoMateria(curso_id, materia_id), cria_banco) controller.salva() actual = controller.pega_registro_por_id(associacao_id) assert actual == expected
class TestControllerAluno: @fixture(autouse=True, scope="function") def setup(self, cria_banco): self.controller = Controller(Aluno(aluno_nome_1), cria_banco) self.controller.salva() def test_aluno_pode_ser_deletado_do_banco(self): expected = [] aluno_id = 1 self.controller.deleta(aluno_id) actual = self.controller.pega_registros() assert actual == expected def test_aluno_criado_banco_dados(self): expected = aluno_nome_1 actual = self.controller.pega_registros() assert actual[0].pega_nome() == expected
def _setup_objetos(self, cria_banco): controller_aluno = Controller(Aluno(aluno_nome_1), cria_banco) controller_aluno.salva() aluno = controller_aluno.pega_registro_por_id(id_=1) controller_curso = Controller(Curso(curso_nome_1), cria_banco) controller_curso.salva() curso = controller_curso.pega_registro_por_id(id_=1) Controller(InscricaoAlunoCurso(aluno_id=1, curso_id=1), cria_banco).salva() controller_materia = Controller(Materia(materia_nome_1), cria_banco) controller_materia.salva() materia_1 = controller_materia.pega_registro_por_id(id_=1) controller_materia = Controller(Materia(materia_nome_1), cria_banco) controller_materia.salva() materia_2 = controller_materia.pega_registro_por_id(id_=2) controller_materia = Controller(Materia(materia_nome_1), cria_banco) controller_materia.salva() materia_3 = controller_materia.pega_registro_por_id(id_=3) Controller(AssociaCursoMateria(curso_id=1, materia_id=1), cria_banco).salva() Controller(AssociaCursoMateria(curso_id=1, materia_id=2), cria_banco).salva() Controller(AssociaCursoMateria(curso_id=1, materia_id=3), cria_banco).salva() controller_coordenador_geral = Controller(CoordenadorGeral(), cria_banco) controller_coordenador_geral.salva() coordenador_geral = controller_coordenador_geral \ .pega_registro_por_id(id_=1) curso.atualiza_materias(materia_1) curso.atualiza_materias(materia_2) curso.atualiza_materias(materia_3) aluno.inscreve_curso(curso) return coordenador_geral
def test_aluno_criado_foi_salvo_banco_dados(self, cria_banco, cria_aluno): expected = aluno_nome_1 controller = Controller(cria_aluno, cria_banco) controller.salva() actual = controller.pega_registros() assert actual[0].pega_nome() == expected