예제 #1
0
def test_find_all_postbacks(retry):
    _transaction = transaction.create(transaction_dictionary.BOLETO_TRANSACTION)
    transaction.pay_boleto(_transaction['id'], transaction_dictionary.PAY_BOLETO)
    search_params = {'id': _transaction['id']}
    _transaction_paid = retry(lambda: transaction.find_by(search_params))
    _postbacks = transaction.postbacks(_transaction_paid[0]['id'])
    assert _postbacks[0]['model_id'] == str(_transaction_paid[0]['id'])
예제 #2
0
def test_postbacks_find_all(retry):
    _subscription = subscription.create(
        subscription_dictionary.BOLETO_SUBSCRIPTION)
    transaction.pay_boleto(_subscription['current_transaction']['id'],
                           transaction_dictionary.PAY_BOLETO)
    _postbacks = retry(lambda: subscription.postbacks(_subscription['id']))
    assert _postbacks[0]['model_id'] == str(_subscription['id'])
예제 #3
0
def test_create_transfer():
    boleto = transaction.create(transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE)
    transaction.pay_boleto(boleto['id'], transaction_dictionary.PAY_BOLETO)
    transfer_dictionary.TRANSFER['recipient_id'] = \
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE['split_rules'][0]['recipient_id']
    _transfer = transfer.create(transfer_dictionary.TRANSFER)
    assert _transfer['id'] is not None
예제 #4
0
def test_specific_postback(retry):
    _transaction = transaction.create(transaction_dictionary.BOLETO_TRANSACTION)
    transaction.pay_boleto(_transaction['id'], transaction_dictionary.PAY_BOLETO)
    search_params = {'id': _transaction['id']}
    transaction_paid = retry(lambda: transaction.find_by(search_params))
    postbacks = transaction.postbacks(transaction_paid[0]['id'])
    specific_postback = transaction.specific_postback(transaction_paid[0]['id'], postbacks[0]['id'])
    assert specific_postback['id'] == postbacks[0]['id']
예제 #5
0
def test_refund_transaction(retry):
    trx_boleto = transaction.create(transaction_dictionary.BOLETO_TRANSACTION)
    transaction.pay_boleto(trx_boleto['id'], transaction_dictionary.PAY_BOLETO)
    trx_credit_card = transaction.create(transaction_dictionary.VALID_CREDIT_CARD_TRANSACTION)
    refund_transaction = transaction.refund(trx_credit_card['id'], transaction_dictionary.REFUNDED_OR_CAPTURE_TRANSACTION)
    search_params = {'id': str(refund_transaction['id'])}
    refunded_transaction = retry(lambda: transaction.find_by(search_params))
    assert 'refunded' == refunded_transaction[0]['status']
예제 #6
0
def test_postbacks_redeliver(retry):
    _transaction = transaction.create(transaction_dictionary.BOLETO_TRANSACTION)
    transaction.pay_boleto(_transaction['id'], transaction_dictionary.PAY_BOLETO)
    search_params = {'id': _transaction['id']}
    _transaction_paid = retry(lambda: transaction.find_by(search_params))
    _postbacks = transaction.postbacks(_transaction_paid[0]['id'])
    redeliver = transaction.postback_redeliver(_transaction_paid[0]['id'], _postbacks[0]['id'])
    assert redeliver['status'] == 'pending_retry'
def test_recipient_balance_operation():
    boleto = transaction.create(transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE)
    transaction.pay_boleto(boleto['id'], transaction_dictionary.PAY_BOLETO)
    transfer_dictionary.TRANSFER['recipient_id'] = \
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE['split_rules'][0]['recipient_id']
    _transfer = transfer.create(transfer_dictionary.TRANSFER)
    recipient_balance_operation = recipient.recipient_balance_operation(_transfer['source_id'])
    assert recipient_balance_operation[0]['movement_object']['source_id'] == _transfer['source_id']
def test_find_all():
    boleto = transaction.create(
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE)
    transaction.pay_boleto(boleto['id'], transaction_dictionary.PAY_BOLETO)
    transfer_dictionary.TRANSFER['recipient_id'] = \
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE['split_rules'][0]['recipient_id']
    transfer.create(transfer_dictionary.TRANSFER)
    balance_operations = balance_operation.find_all()
    assert balance_operations is not None
예제 #9
0
def test_find_by():
    boleto = transaction.create(transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE)
    transaction.pay_boleto(boleto['id'], transaction_dictionary.PAY_BOLETO)
    transfer_dictionary.TRANSFER['recipient_id'] = \
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE['split_rules'][0]['recipient_id']
    _transfer = transfer.create(transfer_dictionary.TRANSFER)
    search_params = {'id': str(_transfer['id'])}
    find_transfer = transfer.find_by(search_params)
    assert _transfer['id'] == find_transfer[0]['id']
예제 #10
0
def test_find_by():
    boleto = transaction.create(
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE)
    transaction.pay_boleto(boleto['id'], transaction_dictionary.PAY_BOLETO)
    transfer_dictionary.TRANSFER['recipient_id'] = \
        transaction_dictionary.BOLETO_TRANSACTION_SPLIT_RULE_PERCENTAGE['split_rules'][0]['recipient_id']
    transfer.create(transfer_dictionary.TRANSFER)
    find_all = balance_operation.find_all()
    search_params = {'id': find_all[0]['id']}
    find_balance_operation = balance_operation.find_by(search_params)
    assert find_balance_operation[0]['id'] == find_all[0]['id']
def test_postbacks_redeliver():
    _subscription = subscription.create(
        subscription_dictionary.BOLETO_SUBSCRIPTION)
    time.sleep(3)
    _transaction = subscription.transactions(_subscription['id'])
    assert _transaction[0]['status'] == 'waiting_payment'
    transaction.pay_boleto(_transaction[0]['id'],
                           transaction_dictionary.PAY_BOLETO)
    time.sleep(3)
    search_params = {'id': _transaction[0]['id']}
    _transaction_paid = transaction.find_by(search_params)
    assert _transaction_paid[0]['status'] == 'paid'
    _postbacks = subscription.postbacks(_subscription['id'])
    redeliver = subscription.postback_redeliver(_subscription['id'],
                                                _postbacks[0]['id'])
    assert redeliver['status'] == 'pending_retry'
예제 #12
0
def test_postbacks_redeliver(retry):
    _subscription = subscription.create(
        subscription_dictionary.BOLETO_SUBSCRIPTION)
    _transaction = retry(
        lambda: subscription.transactions(_subscription['id']))
    assert _transaction[0]['status'] == 'waiting_payment'
    transaction.pay_boleto(_transaction[0]['id'],
                           transaction_dictionary.PAY_BOLETO)
    search_params = {'id': _transaction[0]['id']}
    _transaction_paid = retry(
        lambda: transaction.find_by(search_params),
        retry_if_result=lambda value: value[0]['status'] == 'waiting_payment')
    assert _transaction_paid[0]['status'] == 'paid'
    _postbacks = subscription.postbacks(_subscription['id'])
    redeliver = subscription.postback_redeliver(_subscription['id'],
                                                _postbacks[0]['id'])
    assert redeliver['status'] == 'pending_retry'
예제 #13
0
def test_pay_boleto():
    trx = transaction.create(transaction_dictionary.BOLETO_TRANSACTION)
    pay_transaction = transaction.pay_boleto(trx['id'],
                                             transaction_dictionary.PAY_BOLETO)
    assert 'paid' == pay_transaction['status']