コード例 #1
0
 def test_formato_dados_extraidos(self):
     objeto = Abstracao(**self.dicionario)
     dados = objeto.extrair_dados()
     for linha in dados:
         assert len(linha) == 2
         assert type(linha[0]) == float
         assert type(linha[1]) == str
コード例 #2
0
 def test_metodo_criar_relatorio_csv(self):
     dicionario = {
         'erp': 'erp1',
         'db': 'integrador/dados/banco_ERP1.db',
         'relatorio': 'csv'
     }
     objeto = Abstracao(**dicionario)
     assert objeto.criar_relatorio()
コード例 #3
0
 def test_instanciar_objeto_ok(self):
     objeto = Abstracao(**self.dicionario)
     assert isinstance(objeto, Abstracao)
     objeto2 = Abstracao(erp='erp2', relatorio="csv")
     assert isinstance(objeto2, Abstracao)
コード例 #4
0
 def test_metodo_criar_relatorio(self):
     objeto = Abstracao(**self.dicionario)
     assert objeto.criar_relatorio()
コード例 #5
0
 def test_metodo_relatorio_simples(self):
     objeto = Abstracao(**self.dicionario)
     assert isinstance(objeto.relatorio_simples(), list)
コード例 #6
0
 def test_metodo_extrair_dados(self):
     objeto = Abstracao(**self.dicionario)
     assert isinstance(objeto.extrair_dados(), list)
コード例 #7
0
 def test_metodo_relatorio_simples(self):
     objeto = Abstracao(**self.dicionario)
     assert type(objeto.relatorio_simples()) == list
コード例 #8
0
 def test_metodo_extrair_dados(self):
     objeto = Abstracao(**self.dicionario)
     assert type(objeto.extrair_dados()) == list
コード例 #9
0
 def test_relatorio_nao_implementado(self):
     msg_erro = 'Formato de relatório não implementado'
     with pytest.raises(Exception) as error:
         dicionario = {'erp': 'erp1', 'relatorio': 'xls'}
         Abstracao(**dicionario)
     assert str(error.value) == msg_erro
コード例 #10
0
 def test_erp_nao_implementado(self):
     msg_erro = 'ERP não implementado'
     with pytest.raises(Exception) as error:
         dicionario = {'erp': 'erp_nao_implementado'}
         Abstracao(**dicionario)
     assert str(error.value) == msg_erro
コード例 #11
0

def carregar_credenciais(arquivo):
    credenciais = {}
    try:
        with open(arquivo) as file:
            for line in file:
                if not line.startswith('#'):
                    if not line.startswith('\n'):
                        key, valor = line.split('==>')
                        valor = valor.replace('\n', '')
                        credenciais[key] = valor
    except FileNotFoundError:
        raise FileNotFoundError('Arquivo não encontrado: ' + arquivo)
    return credenciais


if __name__ == "__main__":
    arquivos = []
    arquivos += ['credenciais1.txt', 'credenciais2.txt']
    arquivos += ['credenciais3.txt', 'credenciais4.txt']

    for arquivo in arquivos:
        credenciais = carregar_credenciais(arquivo)
        context = Abstracao(**credenciais)
        dados = context.extrair_dados()
        dados_relatorio = context.relatorio_simples()
        print(dados_relatorio)
        context.criar_relatorio()
        print(80 * '*')