Esempio n. 1
0
def test_get_payment_gateway(settings):
    gateway_name = list(settings.PAYMENT_GATEWAYS.keys())[0]
    gateway = settings.PAYMENT_GATEWAYS[gateway_name]
    gateway_module, gateway_config = get_payment_gateway(gateway_name)
    assert gateway_module.__name__ == gateway["module"]
    assert gateway_config.connection_params == gateway["config"]["connection_params"]
    assert gateway_config.auto_capture == gateway["config"]["auto_capture"]
Esempio n. 2
0
def test_get_payment_gateway(settings):
    gateway_name = list(settings.PAYMENT_GATEWAYS.keys())[0]
    gateway = settings.PAYMENT_GATEWAYS[gateway_name]
    gateway_module, gateway_config = get_payment_gateway(gateway_name)
    assert gateway_module.__name__ == gateway["module"]
    assert gateway_config.connection_params == gateway["config"]["connection_params"]
    assert gateway_config.auto_capture == gateway["config"]["auto_capture"]
Esempio n. 3
0
def test_payment_gateway_form_exists(gateway_name, payment_dummy):
    """Test if for each payment gateway there's a corresponding
    form for the old checkout.

    An error will be raised if it's missing.
    """
    payment_gateway, gateway_params = get_payment_gateway(gateway_name)
    payment_gateway.get_form_class()
Esempio n. 4
0
def test_payment_gateway_form_exists(gateway_name, payment_dummy):
    """Test if for each payment gateway there's a corresponding
    form for the old checkout.

    An error will be raised if it's missing.
    """
    payment_gateway, gateway_params = get_payment_gateway(gateway_name)
    payment_info = create_payment_information(payment_dummy)
    payment_gateway.create_form(None, payment_info, gateway_params)
Esempio n. 5
0
def test_payment_gateway_form_exists(gateway_name, payment_dummy):
    """Test if for each payment gateway there's a corresponding
    form for the old checkout.

    An error will be raised if it's missing.
    """
    payment_gateway, gateway_params = get_payment_gateway(gateway_name)
    payment_info = create_payment_information(payment_dummy)
    payment_gateway.create_form(None, payment_info, gateway_params)
Esempio n. 6
0
def test_braintree_payment_form(settings, payment_dummy):
    payment = payment_dummy
    payment.gateway = settings.BRAINTREE
    data = {'amount': payment.total, 'payment_method_nonce': 'fake-nonce'}
    payment_gateway, gateway_params = get_payment_gateway(payment.gateway)

    form = BraintreePaymentForm(data=data,
                                payment=payment,
                                gateway=payment_gateway,
                                gateway_params=gateway_params)
    assert form.is_valid()
Esempio n. 7
0
def test_dummy_payment_form(kind, charge_status, settings, payment_dummy):
    payment = payment_dummy
    data = {'charge_status': charge_status}
    payment_gateway, gateway_params = get_payment_gateway(payment.gateway)

    form = DummyPaymentForm(
        data=data, payment=payment, gateway=payment_gateway,
        gateway_params=gateway_params)
    assert form.is_valid()
    form.process_payment()
    payment.refresh_from_db()
    assert payment.transactions.last().kind == kind
Esempio n. 8
0
def test_braintree_payment_form_incorrect_amount(payment_dummy):
    amount = Decimal('0.01')
    data = {'amount': amount, 'payment_method_nonce': 'fake-nonce'}
    assert amount != payment_dummy.total

    payment_gateway, gateway_params = get_payment_gateway(
        payment_dummy.gateway)
    form = BraintreePaymentForm(data=data,
                                payment=payment_dummy,
                                gateway=payment_gateway,
                                gateway_params=gateway_params)
    assert not form.is_valid()
    assert form.non_field_errors
Esempio n. 9
0
def test_dummy_payment_form(kind, charge_status, payment_dummy):
    payment = payment_dummy
    data = {'charge_status': charge_status}
    payment_gateway, gateway_params = get_payment_gateway(payment.gateway)
    payment_info = create_payment_information(payment)

    form = payment_gateway.create_form(
        data=data, payment_information=payment_info,
        connection_params=gateway_params)
    assert form.is_valid()
    gateway_process_payment(
        payment=payment, payment_token=form.get_payment_token())
    payment.refresh_from_db()
    assert payment.transactions.last().kind == kind
Esempio n. 10
0
def test_dummy_payment_form(kind, charge_status, settings, payment_dummy):
    payment = payment_dummy
    data = {'charge_status': charge_status}
    payment_gateway, gateway_params = get_payment_gateway(payment.gateway)
    payment_info = create_payment_information(payment)

    form = payment_gateway.create_form(data=data,
                                       payment_information=payment_info,
                                       connection_params=gateway_params)
    assert form.is_valid()
    gateway_process_payment(payment=payment,
                            payment_token=form.get_payment_token())
    payment.refresh_from_db()
    assert payment.transactions.last().kind == kind
Esempio n. 11
0
def test_get_payment_gateway_non_existing_name(settings):
    gateway = "example-gateway"
    settings.CHECKOUT_PAYMENT_GATEWAYS = {gateway: "Example gateway"}
    with pytest.raises(ImproperlyConfigured):
        get_payment_gateway(gateway)
Esempio n. 12
0
def test_get_payment_gateway_not_allowed_checkout_choice(settings):
    gateway = "example-gateway"
    settings.CHECKOUT_PAYMENT_GATEWAYS = {}
    with pytest.raises(ValueError):
        get_payment_gateway(gateway)
Esempio n. 13
0
def test_get_payment_gateway_non_existing_name(settings):
    gateway = "example-gateway"
    settings.CHECKOUT_PAYMENT_GATEWAYS = {gateway: "Example gateway"}
    with pytest.raises(ImproperlyConfigured):
        get_payment_gateway(gateway)
Esempio n. 14
0
def test_get_payment_gateway(settings):
    gateway_name = list(settings.PAYMENT_GATEWAYS.keys())[0]
    gateway = settings.PAYMENT_GATEWAYS[gateway_name]
    gateway_module, gateway_params = get_payment_gateway(gateway_name)
    assert gateway_module.__name__ == gateway['module']
    assert gateway_params == gateway['connection_params']
Esempio n. 15
0
def test_get_form_class(settings):
    payment_gateway, gateway_params = get_payment_gateway(settings.BRAINTREE)
    assert payment_gateway.get_form_class() == BraintreePaymentForm
Esempio n. 16
0
def test_get_payment_gateway_not_allowed_checkout_choice(settings):
    gateway = "example-gateway"
    settings.CHECKOUT_PAYMENT_GATEWAYS = {}
    with pytest.raises(ValueError):
        get_payment_gateway(gateway)
Esempio n. 17
0
def test_get_payment_gateway(settings):
    gateway_name = list(settings.PAYMENT_GATEWAYS.keys())[0]
    gateway = settings.PAYMENT_GATEWAYS[gateway_name]
    gateway_module, gateway_params = get_payment_gateway(gateway_name)
    assert gateway_module.__name__ == gateway['module']
    assert gateway_params == gateway['connection_params']
Esempio n. 18
0
def test_get_form_class(settings):
    payment_gateway, gateway_params = get_payment_gateway(settings.DUMMY)
    assert payment_gateway.get_form_class() == DummyPaymentForm