def test_process_data_redirects_to_failure_on_payment_failure(self):
     self.payment.status = PaymentStatus.REJECTED
     provider = DummyProvider()
     request = MagicMock()
     request.GET = {}
     with self.assertRaises(RedirectNeeded) as exc:
         provider.process_data(self.payment, request)
         self.assertEqual(exc.args[0], self.payment.get_failure_url())
 def test_process_data_supports_verification_result(self):
     provider = DummyProvider()
     verification_status = PaymentStatus.CONFIRMED
     request = MagicMock()
     request.GET = {'verification_result': verification_status}
     with self.assertRaises(RedirectNeeded) as exc:
         provider.process_data(self.payment, request)
         self.assertEqual(self.payment.status, verification_status)
         self.assertEqual(exc.args[0], self.payment.get_success_url())