예제 #1
0
    def test_is_created(self):
        payment = Payment(
            **self.payment_data,
            to_account=self.bob_account,
            direction=PaymentDirections.OUTGOING.name,
        )

        payment.full_clean()
        payment.save()

        payments = Payment.objects.filter(account=self.alice_account.id)
        self.assertEqual(len(payments.all()), 1)
예제 #2
0
    def test_payment_detail(self):

        self.assertFalse(Payment.objects.exists())
        payment = Payment(**self.TEST_DETAIL_PAYMENT_DATA)
        payment.full_clean()
        payment.save()
        self.assertTrue(Payment.objects.exists())
        self.assertTrue(
            Payment.objects.filter(payment_uuid=payment.payment_uuid).exists())

        payment_url = payment.get_absolute_url()

        request = self.factory.get(payment_url)
        request.user = self.anonymeUser
        request = add_middledware_to_request(request, SessionMiddleware)
        request.session.save()
        response = views.payment_details(request, payment.payment_uuid)
        self.assertEqual(response.status_code, 302)

        request = self.factory.get(payment_url)
        request.user = self.sender
        request = add_middledware_to_request(request, SessionMiddleware)
        request.session.save()
        response = views.payment_details(request, payment.payment_uuid)
        self.assertEqual(response.status_code, 200)

        request = self.factory.get(payment_url)
        request.user = self.recipient
        request = add_middledware_to_request(request, SessionMiddleware)
        request.session.save()
        response = views.payment_details(request, payment.payment_uuid)
        self.assertEqual(response.status_code, 200)

        request = self.factory.get(payment_url)
        request.user = self.no_payment_user
        request = add_middledware_to_request(request, SessionMiddleware)
        request.session.save()
        self.assertRaises(Http404,
                          views.payment_details,
                          request=request,
                          payment_uuid=payment.payment_uuid)