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.'] })
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 })
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"])
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())
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())
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())
def test_valid_form(self): form_data = {'origin_account': 1, 'dest_account': 2, 'amount': 20} form = PaymentForm(form_data) self.assertTrue(form.is_valid())
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())
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())
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())
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())
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())
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())
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())
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())