Esempio n. 1
0
def test_get_account_statements(monkeypatch, authentication_return,
                                account_statements_return):
    response = create_fake_response(authentication_return)
    monkeypatch.setattr('requests.post', MagicMock(return_value=response))
    nubank_client = Nubank('12345678909', '12345678')

    response = create_fake_response(account_statements_return)
    monkeypatch.setattr('requests.post', MagicMock(return_value=response))
    statements = nubank_client.get_account_statements()

    assert len(statements) == 2
Esempio n. 2
0
class Downloader:
    def get_config(self):
        with open('config.yml', 'r') as f:
            doc = yaml.load(f)
        return doc

    def __init__(self, uuid):
        self.config = self.get_config()

        if self.config['develop'] == True:
            print(uuid)
            return

        self.cpf = self.config['cpf']
        self.password = self.config['password']

        self.nu = Nubank()
        self.nu.authenticate_with_qr_code(self.cpf, self.password, uuid)

    def download_account_data(self):
        if self.config['develop'] == True:
            f = open("account_statements.json", "r")
            data = f.read()
            f.close()
            return json.loads(data)

        account_statements = self.nu.get_account_statements()

        app_json = json.dumps(account_statements)
        f = open("account_statements.json", "w+")
        f.write(app_json)
        f.close()

        return account_statements

    def download_credit_card_data(self):
        if self.config['develop'] == True:
            f = open("card_statements.json", "r")
            data = f.read()
            f.close()
            return json.loads(data)

        card_statements = self.nu.get_card_statements()

        app_json = json.dumps(card_statements)
        f = open("card_statements.json", "w+")
        f.write(app_json)
        f.close()

        return card_statements
Esempio n. 3
0
def test_get_account_statements(monkeypatch, authentication_return, account_statements_return):
    response = create_fake_response(authentication_return)
    monkeypatch.setattr('requests.post', MagicMock(return_value=response))
    nubank_client = Nubank('12345678909', '12345678')

    response = create_fake_response(account_statements_return)
    monkeypatch.setattr('requests.post', MagicMock(return_value=response))
    statements = nubank_client.get_account_statements()

    assert len(statements) == 3
    assert statements[2]['id'] == 'abcde-fghi-jklmn-opqrst-uvx1'
    assert statements[2]['__typename'] == 'TransferInEvent'
    assert statements[2]['title'] == 'Transferência recebida'
    assert statements[2]['detail'] == 'R$127.33'
    assert statements[2]['postDate'] == '2018-03-06'
    assert statements[2]['amount'] == 127.33
Esempio n. 4
0
def test_get_account_statements():
    nubank_client = Nubank(client=MockHttpClient())
    nubank_client.authenticate_with_qr_code('12345678912', 'hunter12', 'some-uuid')

    statements = nubank_client.get_account_statements()

    assert len(statements) == 5
    assert statements[3]['id'] == 'abcde-fghi-jklmn-opqrst-uvx1'
    assert statements[3]['__typename'] == 'TransferInEvent'
    assert statements[3]['title'] == 'Transferencia recebida'
    assert statements[3]['detail'] == 'R$127.33'
    assert statements[3]['postDate'] == '2018-03-06'
    assert statements[3]['amount'] == 127.33

    assert statements[4]['id'] == 'abcdefgh-ijkl-mnop-qrst-uvwxyz0123'
    assert statements[4]['__typename'] == 'BarcodePaymentEvent'
    assert statements[4]['title'] == 'Pagamento efetuado'
    assert statements[4]['detail'] == 'AES ELETROPAULO'
    assert statements[4]['postDate'] == '2018-02-05'
    assert statements[4]['amount'] == 169.2
Esempio n. 5
0
def test_get_account_statements():
    nubank_client = Nubank(client=MockHttpClient())
    nubank_client.authenticate_with_qr_code('12345678912', 'hunter12',
                                            'some-uuid')

    statements = nubank_client.get_account_statements()

    assert len(statements) == 12
    assert statements[0]['id'] == 'e409e495-4a16-4bad-9ddb-5c447c84fdcb'
    assert statements[0]['__typename'] == 'TransferOutEvent'
    assert statements[0]['title'] == 'Transferência enviada'
    assert statements[0]['detail'] == 'Waldisney da Silva - R$ 4.496,90'
    assert statements[0]['postDate'] == '2021-04-14'
    assert statements[0]['amount'] == 4496.9

    assert statements[11]['id'] == 'a9f96774-37f2-431e-9e6f-a081defacf25'
    assert statements[11]['__typename'] == 'BarcodePaymentEvent'
    assert statements[11]['title'] == 'Pagamento efetuado'
    assert statements[11]['detail'] == 'CONFIDENCE CORRETORA DE CAMBIO S A'
    assert statements[11]['postDate'] == '2020-12-08'
    assert statements[11]['amount'] == 4245.1
Esempio n. 6
0
def test_get_account_statements(monkeypatch, account_statements_return):
    monkeypatch.setattr(Discovery, '_update_proxy_urls', fake_update_proxy)
    monkeypatch.setattr(HttpClient, 'post', MagicMock(return_value=account_statements_return))
    nubank_client = Nubank()

    statements = nubank_client.get_account_statements()

    assert len(statements) == 5
    assert statements[3]['id'] == 'abcde-fghi-jklmn-opqrst-uvx1'
    assert statements[3]['__typename'] == 'TransferInEvent'
    assert statements[3]['title'] == 'Transferência recebida'
    assert statements[3]['detail'] == 'R$127.33'
    assert statements[3]['postDate'] == '2018-03-06'
    assert statements[3]['amount'] == 127.33

    assert statements[4]['id'] == 'abcdefgh-ijkl-mnop-qrst-uvwxyz0123'
    assert statements[4]['__typename'] == 'BarcodePaymentEvent'
    assert statements[4]['title'] == 'Pagamento efetuado'
    assert statements[4]['detail'] == 'AES ELETROPAULO'
    assert statements[4]['postDate'] == '2018-02-05'
    assert statements[4]['amount'] == 169.2
Esempio n. 7
0
def test_get_account_statements(monkeypatch, authentication_return, account_statements_return):
    response = create_fake_response(authentication_return)
    monkeypatch.setattr('requests.post', MagicMock(return_value=response))
    nubank_client = Nubank()

    response = create_fake_response(account_statements_return)
    monkeypatch.setattr('requests.post', MagicMock(return_value=response))
    statements = nubank_client.get_account_statements()

    assert len(statements) == 4
    assert statements[2]['id'] == 'abcde-fghi-jklmn-opqrst-uvx1'
    assert statements[2]['__typename'] == 'TransferInEvent'
    assert statements[2]['title'] == 'Transferência recebida'
    assert statements[2]['detail'] == 'R$127.33'
    assert statements[2]['postDate'] == '2018-03-06'
    assert statements[2]['amount'] == 127.33

    assert statements[3]['id'] == 'abcdefgh-ijkl-mnop-qrst-uvwxyz0123'
    assert statements[3]['__typename'] == 'BarcodePaymentEvent'
    assert statements[3]['title'] == 'Pagamento efetuado'
    assert statements[3]['detail'] == 'AES ELETROPAULO'
    assert statements[3]['postDate'] == '2018-02-05'
    assert statements[3]['amount'] == 169.2