예제 #1
0
def donation(request):
    context_dict = {}
    if request.POST:
        try:

            if Donation.objects.filter():
                donation = Donation.objects.filter()[0]
            else:
                donation = Donation()
                donation.name = "Corona virus fundraising"
                donation.save()

            donor = Donor()
            donor.full_name = request.POST['firstname'] + " " + request.POST[
                'lastname']
            donor.amount = request.POST['amount']
            donor.email = request.POST['email']
            donor.phone_number = request.POST['phonenumber']
            donor.save()

            donorDonation = DonorDonation()
            donorDonation.donation = donation
            donorDonation.donor = donor

            return redirect('/')
        except:
            render(request, 'app/donate.html', context_dict)
    else:
        return render(request, 'app/donate.html', context_dict)
예제 #2
0
def test_donor_with_complete_fields():
    test_donor = Donor(donor_name='Tesla', email='*****@*****.**', want_receipt=True,
                       telephone_number='604-123-5678', mobile_number='604-123-5678',
                       address_line='Mars street', city='Tokyo',
                       province='Japan', postal_code='123123', verified=True)
    test_donor.save()

    response = Donor.objects.get(donor_name='Tesla')
    assert response.donor_name == 'Tesla'
    assert response.email == '*****@*****.**'
    assert response.want_receipt == True
    assert response.telephone_number == '604-123-5678'
    assert response.mobile_number == '604-123-5678'
    assert response.address_line == 'Mars street'
    assert response.city == 'Tokyo'
    assert response.province == 'Japan'
    assert response.postal_code == '123123'
    assert response.verified == True
예제 #3
0
def test_invalid_postal_code():
    test_donor = Donor(donor_name='Kobayashi',
                       postal_code='12345678123afasdf', want_receipt=False)
    test_donor.save()
    response = Donor.objects.get(donor_name='Kobayashi')
    assert len(response.postal_code) == 7
예제 #4
0
def test_donor_null_for_want_receipt():
    with pytest.raises(IntegrityError):
        test_donor = Donor(donor_name='Tohru', telephone_number='123-333-3333')
        test_donor.save()
예제 #5
0
def test_donor_bad_phonenumber():
    # DOES NOT THROW ANYTHING.
    test_donor = Donor(donor_name='Zavala',
                       telephone_number='111122223333123', want_receipt=False)
    test_donor.save()