def test_authorize_multiple(self): """Test making multiple authorization using AUTHORIZENET.""" if SKIP_TESTS: return purchase = make_test_purchase(sub_total=Decimal('100.00'), payment=self.default_payment) self.assertEqual(purchase.total, Decimal('100.00')) pending = self.gateway.create_pending_payment(purchase=purchase, amount=Decimal('25.00')) self.assertEqual(pending.amount, Decimal('25.00')) self.assertEqual(purchase.paymentspending.count(), 1) pending2 = purchase.get_pending(self.gateway.key) self.assertEqual(pending, pending2) result = self.gateway.authorize_payment(purchase) self.assertEqual(result.success, True) self.assertEqual(purchase.authorized_remaining, Decimal('25.00')) self.assertEqual(purchase.remaining, Decimal('75.00')) self.gateway.create_pending_payment(purchase=purchase, amount=Decimal('75.00')) result = self.gateway.authorize_payment(purchase) self.assert_(result.success) auth = result.payment self.assertEqual(auth.amount, Decimal('75.00')) self.assertEqual(purchase.authorized_remaining, Decimal('100.00')) results = self.gateway.capture_authorized_payments(purchase) self.assertEqual(len(results), 2) r1 = results[0] r2 = results[1] self.assertEqual(r1.success, True) self.assertEqual(r2.success, True) self.assertEqual(purchase.total_payments, Decimal('100'))
def test_authorize_multiple(self): """Test making multiple authorization using DUMMY.""" purchase = make_test_purchase(sub_total=Decimal('100.00')) self.assertEqual(purchase.total, Decimal('100.00')) pending = self.gateway.create_pending_payment(purchase=purchase, amount=Decimal('25.00')) self.assertEqual(pending.amount, Decimal('25.00')) self.assertEqual(purchase.paymentspending.count(), 1) pending2 = purchase.get_pending(self.gateway.key) self.assertEqual(pending, pending2) result = self.gateway.authorize_payment(purchase) self.assertEqual(result.success, True) self.assertEqual(purchase.authorized_remaining, Decimal('25.00')) self.assertEqual(purchase.remaining, Decimal('75.00')) self.gateway.create_pending_payment(purchase=purchase, amount=Decimal('75.00')) result = self.gateway.authorize_payment(purchase) self.assert_(result.success) auth = result.payment self.assertEqual(auth.amount, Decimal('75.00')) results = self.gateway.capture_authorized_payments(purchase) self.assertEqual(len(results), 2) r1 = results[0] r2 = results[1] self.assertEqual(r1.success, True) self.assertEqual(r2.success, True) self.assertEqual(purchase.total_payments, Decimal('100'))
def cim_setup(self, **kwargs): kwargs.update({'email' : 'jobelenus+af+lenspro@gmail'}) purchase = make_test_purchase(**kwargs) cim = self.customer_profile(purchase) cim = self.payment_profile(cim) cim = self.shipping(cim) return cim
def test_multiple_pending(self): """Test that creating a second pending payment deletes the first one.""" purchase = make_test_purchase(sub_total=Decimal('125.00')) self.assertEqual(purchase.total, Decimal('125.00')) pend1 = self.gateway.create_pending_payment(purchase=purchase, amount=purchase.total) pend2 = self.gateway.create_pending_payment(purchase=purchase, amount=purchase.total) self.assertEqual(purchase.paymentspending.count(), 1)
def test_authorize(self): purchase = make_test_purchase(sub_total=Decimal('20.00')) result = self.gateway.authorize_payment(purchase=purchase) self.assert_(result.success) payment = result.payment self.assertEqual(payment.amount, Decimal('20.00')) self.assertEqual(purchase.total_payments, Decimal('0.00')) self.assertEqual(purchase.authorized_remaining, Decimal('20.00'))
def test_capture(self): """Test making a direct payment using Purchase Orders.""" purchase = make_test_purchase(sub_total=Decimal('10.00')) self.assertEqual(purchase.total, Decimal('10.00')) result = self.gateway.capture_payment(purchase=purchase) self.assert_(result.success) payment = result.payment self.assertEqual(payment.amount, Decimal('10.00')) self.assertEqual(purchase.total_payments, Decimal('10.00')) self.assertEqual(purchase.authorized_remaining, Decimal('0.00'))
def test_capture(self): """Test making a direct payment using CYBERSOURCE.""" if SKIP_TESTS: return purchase = make_test_purchase(sub_total=Decimal('10.00'), payment=self.default_payment) self.assertEqual(purchase.total, Decimal('10.00')) result = self.gateway.capture_payment(purchase=purchase) self.assert_(result.success) payment = result.payment self.assertEqual(payment.amount, Decimal('10.00')) self.assertEqual(purchase.total_payments, Decimal('10.00')) self.assertEqual(purchase.authorized_remaining, Decimal('0.00'))
def test_pending_authorize(self): if SKIP_TESTS: return purchase = make_test_purchase(sub_total=Decimal('20.00'), payment=self.default_payment) self.assert_(purchase.credit_card) pending = self.gateway.create_pending_payment(purchase) self.assertEqual(pending.amount, Decimal('20.00')) result = self.gateway.authorize_payment(purchase=purchase) self.assert_(result.success) payment = result.payment self.assertEqual(payment.amount, Decimal('20.00')) self.assertEqual(purchase.total_payments, Decimal('0.00')) self.assertEqual(purchase.authorized_remaining, Decimal('20.00'))