Exemple #1
0
class GatewayTest(TestCase):
    SAGEPAY_SERVER = 'https://test.sagepay.com/gateway/service/vspserver-register.vsp'
    WRONG_URL = 'http://fdsfdsfdsf.com'
    PROFILE = 'LOW'
    NOTIFICATION_URL = 'http://test.com'
    WRONG_NOTIFICATION_URL = 'test.com'

    def setUp(self):
        uk = CountryCode(name='United Kingdom', code='GB')
        uk.save()
        self.transaction = SagePayTransaction(
                amount=10,
                oscar_basket = 1,
                oscar_order = 1,
                oscar_user=1,
                description='test',
                billing_firstnames='Alex',
                billing_surname='test',
                billing_address1='test address',
                billing_city='London',
                billing_postcode='12424145',
                billing_country=uk,
                delivery_firstnames='Alex',
                delivery_surname='test',
                delivery_address1='test address',
                delivery_city='London',
                delivery_postcode='12424145',
                delivery_country=uk,
        )
        self.transaction.save()

    def test_register_payment_method_return_type(self):
        gateway = Gateway(self.PROFILE, self.NOTIFICATION_URL, self.SAGEPAY_SERVER)
        register = gateway.register_payment(self.transaction)
        tuple_type = type(register)
        boolean_type = type(register[1])
        self.assertIs(TupleType, tuple_type, 'Gateway.register_payment must return a tuple')
        self.assertIsInstance(register[0], Response, 'The first element of Gateway.register_payment must be a gateway.Response instance')
        self.assertIs(BooleanType, boolean_type, 'The second element of Gateway.register_payment must a boolean')

    def test_register_payment_method_sage_response_status_successful(self):
        gateway = Gateway(self.PROFILE, self.NOTIFICATION_URL, self.SAGEPAY_SERVER)
        register = gateway.register_payment(self.transaction)
        self.assertEqual(register[0].is_successful, True, 'Status response should have returned True, something went wrong with the payment registration')

    def test_register_payment_method_sage_response_status_not_successful(self):
        gateway = Gateway(self.PROFILE, self.WRONG_NOTIFICATION_URL, self.SAGEPAY_SERVER)
        register = gateway.register_payment(self.transaction)
        self.assertEqual(register[0].is_successful, False, 'Status response should have returned False, something went wrong with the payment registration')

    def test_register_payment_method_exception(self):
        gateway = Gateway(self.PROFILE, self.NOTIFICATION_URL, self.WRONG_URL)
        self.assertRaises(GatewayException, gateway.register_payment, self.transaction)
Exemple #2
0
 def setUp(self):
     uk = CountryCode(name='United Kingdom', code='GB')
     uk.save()
     self.transaction = SagePayTransaction(
             amount=10,
             oscar_basket = 1,
             oscar_order = 1,
             oscar_user=1,
             description='test',
             billing_firstnames='Alex',
             billing_surname='test',
             billing_address1='test address',
             billing_city='London',
             billing_postcode='12424145',
             billing_country=uk,
             delivery_firstnames='Alex',
             delivery_surname='test',
             delivery_address1='test address',
             delivery_city='London',
             delivery_postcode='12424145',
             delivery_country=uk,
     )
     self.transaction.save()