def test_find_by(): trx = transaction.create( transaction_dictionary.VALID_CREDIT_CARD_TRANSACTION) time.sleep(1) search_params = {'id': trx['id']} find_trx = transaction.find_by(search_params) assert trx['id'] == find_trx[0]['id']
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'])
def transaction(self): if not self.__transaction: self.__transaction = transaction.find_by( {'metadata': { 'payment': self.uuid, }}) return self.__transaction
def test_create_split_rule_percentage_subscription(): _subscription = subscription.create( subscription_dictionary.CREDIT_CARD_PERCENTAGE_SPLIT_RULE_SUBSCRIPTION) time.sleep(3) search_params = {'id': str(_subscription['current_transaction']['id'])} _transaction = transaction.find_by(search_params) assert _transaction[0]['split_rules'] is not None
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']
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']
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_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'
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'
def test_find_by(retry): trx = transaction.create(transaction_dictionary.VALID_CREDIT_CARD_TRANSACTION) search_params = {'id': trx['id']} find_trx = retry(lambda: transaction.find_by(search_params)) assert trx['id'] == find_trx[0]['id']