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
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()
def test_instanciar_objeto_ok(self): objeto = Abstracao(**self.dicionario) assert isinstance(objeto, Abstracao) objeto2 = Abstracao(erp='erp2', relatorio="csv") assert isinstance(objeto2, Abstracao)
def test_metodo_criar_relatorio(self): objeto = Abstracao(**self.dicionario) assert objeto.criar_relatorio()
def test_metodo_relatorio_simples(self): objeto = Abstracao(**self.dicionario) assert isinstance(objeto.relatorio_simples(), list)
def test_metodo_extrair_dados(self): objeto = Abstracao(**self.dicionario) assert isinstance(objeto.extrair_dados(), list)
def test_metodo_relatorio_simples(self): objeto = Abstracao(**self.dicionario) assert type(objeto.relatorio_simples()) == list
def test_metodo_extrair_dados(self): objeto = Abstracao(**self.dicionario) assert type(objeto.extrair_dados()) == list
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
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
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 * '*')