class TestTabEstruturada(SIETestCase): COD_TABELA_INVALIDO = 9999999999 ITEM_TABELA_INVALIDO = 9999999999 def __init__(self, *args, **kwargs): super(TestTabEstruturada, self).__init__(*args, **kwargs) from sie.SIETabEstruturada import SIETabEstruturada self.valid_entry = self.api.get(SIETabEstruturada.path, {"ITEM_TABELA_MIN": 1}).first() def setUp(self): from sie.SIETabEstruturada import SIETabEstruturada self.tab = SIETabEstruturada() def test_descricao_de_item_valido(self): descricao = self.tab.descricaoDeItem(self.valid_entry['ITEM_TABELA'], self.valid_entry['COD_TABELA']) self.assertEqual(descricao, self.valid_entry['DESCRICAO']) def test_descricao_de_item_invalido(self): with self.assertRaises(SIEException): self.tab.descricaoDeItem(self.ITEM_TABELA_INVALIDO, self.COD_TABELA_INVALIDO) def test_items_de_codigo_valido(self): items = self.tab.itemsDeCodigo(self.valid_entry['COD_TABELA']) self.assertIsInstance(items, list) for item in items: if item['ITEM_TABELA'] == self.valid_entry['ITEM_TABELA']: self.assertEqual(item['DESCRICAO'], self.valid_entry['DESCRICAO']) def test_items_de_codigo_invalido(self): with self.assertRaises(SIEException): self.tab.itemsDeCodigo(self.COD_TABELA_INVALIDO) def test_drop_down_cod_valido(self): items = self.tab.get_drop_down_options(self.valid_entry['COD_TABELA']) self.assertIsInstance(items, list) self.assertGreater(len(items), 0) def test_drop_down_cod_invalido(self): items = self.tab.get_drop_down_options(self.COD_TABELA_INVALIDO) self.assertIsInstance(items, list) self.assertEqual(len(items), 0) def test_drop_down_cod_valido_com_valores_proibidos(self): valores_proibidos = (1, 2,) items = self.tab.get_drop_down_options(self.valid_entry['COD_TABELA'], valores_proibidos) self.assertIsInstance(items, list) self.assertGreater(len(items), 0) for i, descricao in items: if i in valores_proibidos: self.fail(i + " nao deveria estar na lista de items") def test_get_lista_estados_federacao(self): estados = self.tab.get_lista_estados_federacao() self.assertIsInstance(estados, list) self.assertGreater(len(estados), 0)
def get_lista_fundacoes(self): """ :return: lista contendo listas ("CodOpcao","NomeOpcao") """ return SIETabEstruturada().get_drop_down_options(codigo_tabela=self.COD_TABELA_FUNDACOES, valores_proibidos=(self.ITEM_TAB_ESTRUTURADA_DESCRICAO_CAMPO, self.ITEM_FUNDACOES_NAO_SE_APLICA,))
def situacoes(self): """ A função retorna uma lista de dicionários com as possíveis situações (SITUACAO_ITEM) de um projeto :rtype : list :return: Lista de dicionários contendo as chaves `ITEM_TABELA` e `DESCRICAO` """ return SIETabEstruturada().itemsDeCodigo(6011)
def get_lista_funcoes_orgaos(self): """ :return: lista contendo listas ("CodOpcao","NomeOpcao") """ funcoes_proibidas = ( 0, self.ITEM_FUNCOES_ORGAOS_RESPONSAVEL ) return SIETabEstruturada().get_drop_down_options(self.COD_TABELA_FUNCOES_ORGAOS, funcoes_proibidas)
def cadastra_entidade_externa(self, params): """ :param params: Parâmetros de inserção no banco de dados obrigatórios: 'id_pessoa','desc_ent_externa/nome','doc_identificacao/cpf-cnpj','tipo_entidade_item','uf_item' :return: APIPost """ params.update({ "TIPO_ENTIDADE_TAB": self.COD_TABELA_TIPO_ENTIDADE, "UF_TAB": SIETabEstruturada().COD_TABELA_ESTADOS, "DT_CADASTRO": date.today() }) return self.api.post(self.path, params)
def get_lista_funcoes_projeto_pesquisa(self): """ :return: lista contendo listas ("CodOpcao","NomeOpcao") """ funcoes_proibidas = ( self.ITEM_FUNCOES_PROJ_BOLSISTA, self.ITEM_FUNCOES_PROJ_CANDIDATO_BOLSISTA, self.ITEM_FUNCOES_PROJ_COORDENADOR, self.ITEM_FUNCOES_PROJ_DESCR, self.ITEM_FUNCOES_PROJ_NAO_DEFINIDA ) return SIETabEstruturada().get_drop_down_options(self.COD_TABELA_FUNCOES_PROJ, funcoes_proibidas)
def descricaoDeFuncaoDeParticipante(self, participante): """ Dado um parcipante, o método retorna a descrição textual de sua função no projeto :type participante: dict :rtype : str :param participante: Um dicionário correspondente a uma entrada da tabela PARTICIPANTES_PROJ que contenha pelo menos a chave FUNCAO_ITEM """ try: return SIETabEstruturada().descricaoDeItem( participante["FUNCAO_ITEM"], 6003) except AttributeError: return "Não foi possível recuperar"
def get_tipos_entidade(self): """ :return: lista contendo listas ("CodOpcao","NomeOpcao") """ return SIETabEstruturada().get_drop_down_options( self.COD_TABELA_TIPO_ENTIDADE)
def setUp(self): from sie.SIETabEstruturada import SIETabEstruturada self.tab = SIETabEstruturada()
class TestTabEstruturada(SIETestCase): COD_TABELA_INVALIDO = 9999999999 ITEM_TABELA_INVALIDO = 9999999999 def __init__(self, *args, **kwargs): super(TestTabEstruturada, self).__init__(*args, **kwargs) from sie.SIETabEstruturada import SIETabEstruturada self.valid_entry = self.api.get(SIETabEstruturada.path, { "ITEM_TABELA_MIN": 1 }).first() def setUp(self): from sie.SIETabEstruturada import SIETabEstruturada self.tab = SIETabEstruturada() def test_descricao_de_item_valido(self): descricao = self.tab.descricaoDeItem(self.valid_entry['ITEM_TABELA'], self.valid_entry['COD_TABELA']) self.assertEqual(descricao, self.valid_entry['DESCRICAO']) def test_descricao_de_item_invalido(self): with self.assertRaises(SIEException): self.tab.descricaoDeItem(self.ITEM_TABELA_INVALIDO, self.COD_TABELA_INVALIDO) def test_items_de_codigo_valido(self): items = self.tab.itemsDeCodigo(self.valid_entry['COD_TABELA']) self.assertIsInstance(items, list) for item in items: if item['ITEM_TABELA'] == self.valid_entry['ITEM_TABELA']: self.assertEqual(item['DESCRICAO'], self.valid_entry['DESCRICAO']) def test_items_de_codigo_invalido(self): with self.assertRaises(SIEException): self.tab.itemsDeCodigo(self.COD_TABELA_INVALIDO) def test_drop_down_cod_valido(self): items = self.tab.get_drop_down_options(self.valid_entry['COD_TABELA']) self.assertIsInstance(items, list) self.assertGreater(len(items), 0) def test_drop_down_cod_invalido(self): items = self.tab.get_drop_down_options(self.COD_TABELA_INVALIDO) self.assertIsInstance(items, list) self.assertEqual(len(items), 0) def test_drop_down_cod_valido_com_valores_proibidos(self): valores_proibidos = ( 1, 2, ) items = self.tab.get_drop_down_options(self.valid_entry['COD_TABELA'], valores_proibidos) self.assertIsInstance(items, list) self.assertGreater(len(items), 0) for i, descricao in items: if i in valores_proibidos: self.fail(i + " nao deveria estar na lista de items") def test_get_lista_estados_federacao(self): estados = self.tab.get_lista_estados_federacao() self.assertIsInstance(estados, list) self.assertGreater(len(estados), 0)
def get_lista_opcoes_titulacao(self): """ :return: lista contendo listas ("CodOpcao","NomeOpcao") """ return SIETabEstruturada().get_drop_down_options(self.COD_TABELA_TITULACAO)