예제 #1
0
def carrega_carga(session):
    padraorisco = PadraoRisco('CARGA')
    session.add(padraorisco)
    session.commit()
    risco = ParametroRisco('CPFCNPJConsignatario', 'CNPJ do Consignatario',
                           padraorisco=padraorisco)
    session.add(risco)
    # Adicionar um CNPJ que exista na extração, para testar...
    valor = ValorParametro('42581413000157', Filtro.igual)
    session.add(valor)
    risco.valores.append(valor)
    session.merge(risco)
    session.commit()

    risco2 = ParametroRisco('DescricaoMercadoria',
                            'Descrição', padraorisco=padraorisco)
    session.add(risco2)
    # Adicionar uma mercadoria que exista na extração, para testar...
    valor2 = ValorParametro('PILLOW', Filtro.contem)
    session.add(valor2)
    session.commit()
    risco2.valores.append(valor2)
    session.merge(risco2)
    session.commit()
    session.merge(padraorisco)
    session.commit()
    return padraorisco
예제 #2
0
def create_base_testes(dbsession):
    """Cria base para testes funcionais."""
    # print('Iniciando criação da base #############################')
    # print('dbsession', dbsession)
    base1 = BaseOrigem('alimentos_e_esportes')
    dbsession.add(base1)
    dbsession.commit()
    risco1 = PadraoRisco('perigo', base1)
    dbsession.add(risco1)
    dbsession.commit()
    param1 = ParametroRisco('alimento', 'teste1', risco1)
    param2 = ParametroRisco('esporte', 'teste2', risco1)
    dbsession.add(param1)
    dbsession.add(param2)
    dbsession.commit()
    valor1 = ValorParametro('bacon', Filtro.igual, param1)
    valor2 = ValorParametro('base jump', Filtro.igual, param2)
    dbsession.add(valor1)
    dbsession.add(valor2)
    dbsession.commit()
    visao1 = Visao('viagens', base1.id)
    dbsession.add(visao1)
    dbsession.commit()
    tabela1 = Tabela('viagens', 'viagem', '', 0, visao1.id)
    tabela2 = Tabela('alimentos', 'alimento', 'viagem', tabela1.id, visao1.id)
    tabela3 = Tabela('esportes', 'esporte', 'viagem', tabela1.id, visao1.id)
    dbsession.add(tabela1)
    dbsession.add(tabela2)
    dbsession.add(tabela3)
    dbsession.commit()
예제 #3
0
 def test1_risco(self):
     base = PadraoRisco('nome')
     self.session.add(base)
     self.session.commit()
     risco = ParametroRisco('teste', 'teste', base)
     assert risco.nome_campo == 'teste'
     assert risco.descricao == 'teste'
     self.session.add(risco)
     self.session.commit()
     assert risco.id is not None
예제 #4
0
    def cria_padraorisco(self, nomepadraorisco, session):
        """Cria um novo objeto PadraoRisco.

        Args:
            nomepadraorisco: Nome do padrão a ser criado

            session: Sessão do banco de dados
        """
        padraorisco = session.query(PadraoRisco).filter(
            PadraoRisco.nome == nomepadraorisco).first()
        if not padraorisco:
            padraorisco = PadraoRisco(nomepadraorisco)
        self.set_padraorisco(padraorisco)
예제 #5
0
def adiciona_padrao(nome):
    """Função que adiciona um novo padrão de riscos.

    Args:
        nome: Nome do padrão a ser inserido no Banco de Dados
    """
    dbsession = app.config.get('dbsession')
    logger.debug(nome)
    novo_padrao = PadraoRisco(nome)
    dbsession.add(novo_padrao)
    dbsession.commit()
    padraoid = novo_padrao.id
    return redirect(url_for('edita_risco', padraoid=padraoid))
예제 #6
0
 def test_base_original(self):
     base = PadraoRisco('nome')
     assert base.nome == 'nome'
     self.session.add(base)
     self.session.commit()
     risco = ParametroRisco('teste', 'teste', base)
     self.session.add(risco)
     self.session.commit()
     assert risco.id is not None
     risco = self.session.query(ParametroRisco).filter(
         ParametroRisco.nome_campo == 'teste').first()
     self.session.merge(base)
     self.session.commit()
     assert len(base.parametros) == 1
     risco = base.parametros[0]
     assert risco.padraorisco.nome == 'nome'
예제 #7
0
 def test_planilhaCOV(self):
     base = BaseOrigem('Planilha_BTP')
     self.session.add(base)
     self.session.commit()
     depara1 = DePara('nome motorista', 'nomemotorista', base)
     self.session.add(depara1)
     depara2 = DePara('cpf motorista', 'cpfmotorista', base)
     self.session.add(depara2)
     depara3 = DePara('descricao ncm', 'mercadoria', base)
     self.session.add(depara3)
     depara4 = DePara('razao social exportador / importador',
                      'nomeexportador', base)
     self.session.add(depara4)
     depara5 = DePara('cnpj exportador / importador',
                      'cnpjexportador', base)
     self.session.add(depara5)
     depara6 = DePara('nome operador scanner', 'operadorscanner', base)
     self.session.add(depara6)
     depara7 = DePara('cpf operador scanner', 'cpfoperadorscanner', base)
     self.session.add(depara7)
     depara9 = DePara('cnpj transportadora', 'cnpjtransportadora', base)
     self.session.add(depara9)
     self.session.commit()
     de_para_dict = {
         depara.titulo_ant: depara.titulo_novo for depara in base.deparas}
     print(de_para_dict)
     # TODO: Fazer planilha COV "FAKE" com títulos reais
     # e linha de dados
     lista_nova = muda_titulos_csv(CSV_TITLES_TEST, de_para_dict)
     lista_old = [['nome motorista', 'cpf motorista', 'descricao ncm',
                   'razao social exportador / importador',
                   'cnpj exportador / importador',
                   'nome operador scanner', 'cpf operador scanner',
                   'cnpj transportadora'], ['dado1c1', 'dado1c2']]
     lista = muda_titulos_lista(lista_old, de_para_dict)
     print(lista_nova[0])
     print('lista')
     print(lista[0])
     for old, new in de_para_dict.items():
         assert old in ' '.join(lista_old[0])
         assert new not in ' '.join(lista_old[0])
     for old, new in de_para_dict.items():
         assert new in ' '.join(lista_nova[0])
     padraorisco = PadraoRisco('PlanilhaCOV')
     self.session.add(padraorisco)
     self.session.commit()
예제 #8
0
 def test2_valor(self):
     base = PadraoRisco('nome')
     self.session.add(base)
     self.session.commit()
     risco = ParametroRisco('teste1', 'teste2', base)
     assert risco.nome_campo == 'teste1'
     valor = ValorParametro('teste3', Filtro.igual)
     assert valor.valor == 'teste3'
     assert valor.tipo_filtro is Filtro.igual
     self.session.add(valor)
     self.session.commit()
     risco.valores.append(valor)
     self.session.add(risco)
     self.session.commit()
     assert len(risco.valores) == 1
     valor = risco.valores[0]
     assert valor.valor == 'teste3'
     assert valor.risco.nome_campo == 'teste1'
     assert valor.risco.descricao == 'teste2'