Exemple #1
0
 def test_metodo_executar_texto_1(self):
     dados = {
         'algoritmo': 'texto_1',
         'arquivo': 'integrador/dados/arquivo_texto1_modelo1.txt'
     }
     objeto = Contexto(**dados)
     assert type(objeto.executar()) == list
Exemple #2
0
 def test_metodo_executar_csv(self):
     dados = {
         'algoritmo': 'CSV',
         'arquivo': 'integrador/dados/arquivo1.csv'
     }
     objeto = Contexto(**dados)
     assert type(objeto.executar()) == list
Exemple #3
0
 def test_setters_fail(self):
     msg_erro = 'Algoritmo não implementado'
     dicionario = {'algoritmo': 'csv', 'arquivo': 'file.csv'}
     with pytest.raises(Exception) as error:
         objeto = Contexto(**dicionario)
         objeto.algoritmo = 'algoritmo_nao_implementado'
     assert str(error.value) == msg_erro
Exemple #4
0
 def test_metodo_dados_armazenados(self):
     dicionario = {'algoritmo': 'csv',
                   'arquivo': 'file.csv',
                   'pass': '******'}
     objeto = Contexto(**dicionario)
     assert type(objeto.dados_armazenados()) == list
     assert objeto.dados_armazenados() == ['algoritmo', 'arquivo', 'pass']
Exemple #5
0
 def test_metodo_algoritmos_implementados(self):
     dicionario = {
         'algoritmo': 'csv',
         'arquivo': 'file.csv',
         'pass': '******'
     }
     objeto = Contexto(**dicionario)
     assert type(objeto.algoritmos_implementados()) == list
Exemple #6
0
 def test_instanciar_objeto_ok(self):
     dicionario = {'algoritmo': 'csv',
                   'arquivo': 'file.csv',
                   'pass': '******'}
     objeto = Contexto(**dicionario)
     assert isinstance(objeto, Contexto)
     objeto2 = Contexto(algoritmo='csv', arquivo="file.csv")
     assert isinstance(objeto2, Contexto)
Exemple #7
0
 def test_setters(self):
     dicionario = {'algoritmo': 'csv',
                   'arquivo': 'file.csv',
                   'pass': '******'}
     objeto = Contexto(**dicionario)
     assert objeto.algoritmo == 'Algoritmo CSV'
     isinstance(objeto.algoritmo, Estrategia)
     objeto.algoritmo = 'Sqlite'
     isinstance(objeto.algoritmo, Estrategia)
     assert objeto.dados == dicionario
     objeto.dados = {}
     assert objeto.dados == {}
Exemple #8
0
 def test_instanciar_objeto_fail(self):
     msg_erro = "Credendiais inválidas. "
     msg_erro = msg_erro + "Necessário: ('algoritmo', 'arquivo')"
     with pytest.raises(Exception) as error:
         dicionario = {'algoritmo': 'csv', 'pass': '******'}
         Contexto(**dicionario)
     assert str(error.value) == msg_erro
Exemple #9
0
 def test_str_repr(self):
     dicionario = {'algoritmo': 'csv',
                   'arquivo': 'file.csv',
                   'pass': '******'}
     objeto = Contexto(**dicionario)
     assert str(objeto) == 'Algoritmo CSV'
     assert repr(objeto) == 'Algoritmo CSV'
Exemple #10
0
 def test_metodo_executar_sqlite(self):
     dados = {'algoritmo': 'SQLite', 'db': 'integrador/dados/banco1.db'}
     objeto = Contexto(**dados)
     assert type(objeto.executar()) == list
Exemple #11
0
 def test_algoritmo_nao_implementado(self):
     msg_erro = 'Algoritmo não implementado'
     with pytest.raises(Exception) as error:
         dicionario = {'algoritmo': 'algoritmo_nao_implementado'}
         Contexto(**dicionario)
     assert str(error.value) == msg_erro
Exemple #12
0
    credenciais = {}
    try:
        with open(arquivo) as file:
            for line in file:
                if ((line != '\n') and (line[0] != '#')):
                    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 += [
        'credenciais_texto1_modelo1.txt', 'credenciais_texto1_modelo2.txt'
    ]
    arquivos += [
        'credenciais_texto2_modelo1.txt', 'credenciais_texto2_modelo2.txt'
    ]

    for arquivo in arquivos:
        credenciais = carregar_credenciais(arquivo)
        context = Contexto(**credenciais)
        print(80 * '*')
        print(context.algoritmo)
        print(context.dados_armazenados())
        valor = context.executar()
        print(valor)