Exemple #1
0
    def test_blank_payment(self):

        data = {}
        data["creditcardnumber"] = None
        data["cardholder"] = None
        data["expirationdate"] = None
        data["securitycode"] = None
        data["amount"] = None

        form = PaymentForm(data=data)
        
        self.assertFalse(form.is_valid())
        self.assertEqual(form.errors, {
        'creditcardnumber': ['This field is required.'],
        'cardholder': ['This field is required.'],
        'expirationdate': ['This field is required.'],
        'amount':['This field is required.']
    })
Exemple #2
0
def home(request):
    customer_token = None
    if request.method == 'POST':
        request.POST._mutable = True

        form = PaymentForm(request.POST)

        if form.is_valid():
            paysafe_user_id = HelperPaySafe.get_or_create_paysafe_customer_profile(
                request.user)
            customer_token = HelperPaySafe.get_single_user_customer_token(
                paysafe_user_id)
            form.data['is_submit_clicked'] = 1

            profile_instance = request.user.profile
            profile_instance.address = form.cleaned_data.get('street')
            profile_instance.mobile = form.cleaned_data.get('mobile')
            profile_instance.city = form.cleaned_data.get('city')
            profile_instance.pincode = form.cleaned_data.get('pincode')
            profile_instance.save()
    else:
        django_user_instance = request.user
        if django_user_instance.is_authenticated:
            init_data = {
                'mobile': django_user_instance.profile.mobile,
                'street': django_user_instance.profile.address,
                'city': django_user_instance.profile.city,
                'pincode': django_user_instance.profile.pincode,
                'paysafe_user_id':
                django_user_instance.profile.paysafe_user_id,
                'is_submit_clicked': 0,
            }

        else:
            init_data = {}

        form = PaymentForm(initial=init_data)
    return render(request=request,
                  template_name="home.html",
                  context={
                      'form': form,
                      'paysafe_public_key': PAYSAFE_PUBLIC_KEY,
                      'customer_token': customer_token
                  })
Exemple #3
0
    def test_valid_payment(self):
        
        data = {}
        data["creditcardnumber"] = "4024007129931746"
        data["cardholder"] = "John Doe"
        data["expirationdate"] = datetime.date(2021,6,5)
        data["securitycode"] = "043"
        data["amount"] = 12

        form = PaymentForm(data=data)

        self.assertTrue(form.is_valid())

        payment = form.save()

        self.assertEqual(payment.creditcardnumber, data["creditcardnumber"] )
        self.assertEqual(payment.cardholder, data["cardholder"])
        self.assertEqual(payment.expirationdate, data["expirationdate"])
        self.assertEqual(payment.securitycode, data["securitycode"], )
        self.assertEqual(payment.amount, data["amount"])
Exemple #4
0
 def test_invalid_form_invalid_amount(self):
     form_data = {'origin_account': 1, 'dest_account': 2, 'amount': -10}
     form = PaymentForm(form_data)
     self.assertFalse(form.is_valid())
Exemple #5
0
 def test_invalid_form_same_destination_acct(self):
     form_data = {'origin_account': 1, 'dest_account': 1, 'amount': 10}
     form = PaymentForm(form_data)
     self.assertFalse(form.is_valid())
Exemple #6
0
 def test_invalid_form_balance_exceeded(self):
     form_data = {'origin_account': 1, 'dest_account': 2, 'amount': 2000}
     form = PaymentForm(form_data)
     self.assertFalse(form.is_valid())
Exemple #7
0
 def test_valid_form(self):
     form_data = {'origin_account': 1, 'dest_account': 2, 'amount': 20}
     form = PaymentForm(form_data)
     self.assertTrue(form.is_valid())
Exemple #8
0
 def test_can_save(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_INITIAL
     PAYMENT_DATA['sender'] = self.sender.pk
     PAYMENT_DATA['recipient'] = self.recipient.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertTrue(form.is_valid())
Exemple #9
0
 def test_cannot_save_recipient_inactive(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_INITIAL
     PAYMENT_DATA['sender'] = self.sender.pk
     PAYMENT_DATA['recipient'] = self.inactive_user.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())
Exemple #10
0
 def test_cannot_save_recipient_not_found(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_INITIAL
     PAYMENT_DATA['sender'] = self.sender.pk
     PAYMENT_DATA['recipient'] = user_test_data.USER_NOT_FOUND_PK
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())
Exemple #11
0
 def test_cannot_save_detail_none(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_NO_DETAIL
     PAYMENT_DATA['sender'] = self.sender.pk
     PAYMENT_DATA['recipient'] = self.recipient.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())
Exemple #12
0
 def test_cannot_save_recipient_missing(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_MISSING_RECIPIENT
     PAYMENT_DATA['sender'] = self.sender.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())
Exemple #13
0
 def test_cannot_save_sender_missing(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_MISSING_SENDER
     PAYMENT_DATA['recipient'] = self.recipient.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())
Exemple #14
0
 def test_cannot_save_recipient_none(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_NO_AMOUNT
     PAYMENT_DATA['sender'] = self.sender.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())
Exemple #15
0
 def test_cannot_save_sender_none(self):
     PAYMENT_DATA = payments_test_data.PAYMENT_DATA_INITIAL
     PAYMENT_DATA['recipient'] = self.recipient.pk
     form = PaymentForm(PAYMENT_DATA)
     self.assertFalse(form.is_valid())