示例#1
0
 def test_preapproval_limits(self, _call):
     _call.return_value = good_preapproval_string
     data = self.get_data()
     paypal.get_preapproval_key(data)
     eq_(_call.call_args[0][1]['paymentPeriod'], 'DAILY')
     eq_(_call.call_args[0][1]['maxAmountPerPayment'], 15)
     eq_(_call.call_args[0][1]['maxNumberOfPaymentsPerPeriod'], 15)
示例#2
0
 def test_not_preapproval_limits(self, _call):
     _call.return_value = good_preapproval_string
     data = self.get_data()
     paypal.get_preapproval_key(data)
     assert 'paymentPeriod' not in _call.call_args[0][1]
     assert 'maxAmountPerPayment' not in _call.call_args[0][1]
     assert 'maxNumberOfPaymentsPerPeriod' not in _call.call_args[0][1]
示例#3
0
文件: test.py 项目: PinZhang/zamboni
 def test_preapproval_patterns(self, _call):
     _call.return_value = good_preapproval_string
     data = self.get_data()
     paypal.get_preapproval_key(data)
     eq_(_call.call_args[0][1]['cancelUrl'],
         absolutify(reverse(data['pattern'], args=['cancel'])))
     eq_(_call.call_args[0][1]['returnUrl'],
         absolutify(reverse(data['pattern'], args=['complete'])))
示例#4
0
 def test_preapproval_patterns(self, _call):
     _call.return_value = good_preapproval_string
     data = self.get_data()
     paypal.get_preapproval_key(data)
     eq_(_call.call_args[0][1]['cancelUrl'],
         absolutify(reverse(data['pattern'], args=['cancel'])))
     eq_(_call.call_args[0][1]['returnUrl'],
         absolutify(reverse(data['pattern'], args=['complete'])))
示例#5
0
文件: test.py 项目: bebef1987/zamboni
    def test_preapproval_amount(self, _call):
        _call.return_value = good_preapproval_string
        data = self.get_data()
        paypal.get_preapproval_key(data)
        eq_(_call.call_args[0][1]["maxTotalAmountOfAllPayments"], "2000")

        data["maxAmount"] = 1000
        paypal.get_preapproval_key(data)
        eq_(_call.call_args[0][1]["maxTotalAmountOfAllPayments"], "1000")
示例#6
0
    def test_preapproval_amount(self, _call):
        _call.return_value = good_preapproval_string
        data = self.get_data()
        paypal.get_preapproval_key(data)
        eq_(_call.call_args[0][1]['maxTotalAmountOfAllPayments'], '2000')

        data['maxAmount'] = 1000
        paypal.get_preapproval_key(data)
        eq_(_call.call_args[0][1]['maxTotalAmountOfAllPayments'], '1000')
示例#7
0
文件: views.py 项目: dbialer/zamboni
def preapproval(request):
    today = datetime.today()
    data = {"startDate": today, "endDate": today + timedelta(days=365 * 2), "pattern": "users.payments"}
    try:
        result = paypal.get_preapproval_key(data)
    except paypal.PaypalError, e:
        paypal_log.error(u"Preapproval key: %s" % e, exc_info=True)
        raise
示例#8
0
文件: views.py 项目: dimonov/zamboni
def preapproval(request):
    today = datetime.today()
    data = {'startDate': today,
            'endDate': today + timedelta(days=365 * 2),
            'pattern': 'users.payments',
            }
    try:
        result = paypal.get_preapproval_key(data)
    except paypal.PaypalError, e:
        paypal_log.error(u'Preapproval key: %s' % e, exc_info=True)
        raise
示例#9
0
def preapproval(request):
    today = datetime.today()
    data = {'startDate': today,
            'endDate': today + timedelta(days=365 * 2),
            'pattern': 'users.payments',
            }
    try:
        result = paypal.get_preapproval_key(data)
    except paypal.PaypalError, e:
        paypal_log.error(u'Preapproval key: %s' % e, exc_info=True)
        raise
示例#10
0
def preapproval(request, complete=None, cancel=None):
    if waffle.switch_is_active('currencies'):
        failure = currency(request, do_redirect=False)
        if failure:
            return failure

    today = datetime.today()
    data = {
        'startDate': today,
        'endDate': today + timedelta(days=365),
    }
    store = {
        'expiry': data['endDate'],
        'solitude-key': None,
        'complete': complete,
        'cancel': cancel,
    }

    if waffle.flag_is_active(request, 'solitude-payments'):
        client.create_buyer_if_missing(request.amo_user)
        try:
            result = client.post_preapproval(
                data={
                    'start':
                    data['startDate'].date(),
                    'end':
                    data['endDate'].date(),
                    'uuid':
                    request.amo_user,
                    'return_url':
                    absolutify(reverse('account.payment', args=['complete'])),
                    'cancel_url':
                    absolutify(reverse('account.payment', args=['cancel'])),
                })
        except client.Error:
            paypal_log.error(u'preapproval', exc_info=True)
            raise

        store.update({'key': result['key'], 'solitude-key': result['pk']})
        url = result['paypal_url']

    else:
        # TODO(solitude): remove this.
        data.update({'pattern': 'account.payment'})
        try:
            result = paypal.get_preapproval_key(data)
        except paypal.PaypalError, e:
            paypal_log.error(u'Preapproval key: %s' % e, exc_info=True)
            raise

        store.update({'key': result['preapprovalKey']})
        url = paypal.get_preapproval_url(result['preapprovalKey'])
示例#11
0
def preapproval(request, complete=None, cancel=None):
    if waffle.switch_is_active('currencies'):
        failure = currency(request, do_redirect=False)
        if failure:
            return failure

    today = datetime.today()
    data = {
        'startDate': today,
        'endDate': today + timedelta(days=365),
    }
    store = {
        'expiry': data['endDate'],
        'solitude-key': None,
        'complete': complete,
        'cancel': cancel,
    }

    if waffle.flag_is_active(request, 'solitude-payments'):
        client.create_buyer_if_missing(request.amo_user)
        try:
            result = client.post_preapproval(data={
                'start': data['startDate'].date(),
                'end': data['endDate'].date(),
                'uuid': request.amo_user,
                'return_url': absolutify(reverse('account.payment',
                                                 args=['complete'])),
                'cancel_url': absolutify(reverse('account.payment',
                                                  args=['cancel'])),
            })
        except client.Error:
            paypal_log.error(u'preapproval', exc_info=True)
            raise

        store.update({'key': result['key'], 'solitude-key': result['pk']})
        url = result['paypal_url']

    else:
        # TODO(solitude): remove this.
        data.update({'pattern': 'account.payment'})
        try:
            result = paypal.get_preapproval_key(data)
        except paypal.PaypalError, e:
            paypal_log.error(u'Preapproval key: %s' % e, exc_info=True)
            raise

        store.update({'key': result['preapprovalKey']})
        url = paypal.get_preapproval_url(result['preapprovalKey'])
示例#12
0
def preapproval(request, complete=None, cancel=None):
    if waffle.switch_is_active('currencies'):
        failure = currency(request, do_redirect=False)
        if failure:
            return failure

    today = datetime.today()
    data = {'startDate': today,
            'endDate': today + timedelta(days=365),
            'pattern': 'account.payment',
            }
    try:
        result = paypal.get_preapproval_key(data)
    except paypal.PaypalError, e:
        paypal_log.error(u'Preapproval key: %s' % e, exc_info=True)
        raise
示例#13
0
文件: views.py 项目: vdt/zamboni
def preapproval(request, complete=None, cancel=None):
    if waffle.switch_is_active('currencies'):
        failure = currency(request, do_redirect=False)
        if failure:
            return failure

    today = datetime.today()
    data = {'startDate': today,
            'endDate': today + timedelta(days=365),
            'pattern': 'account.payment',
            }
    try:
        result = paypal.get_preapproval_key(data)
    except paypal.PaypalError, e:
        paypal_log.error(u'Preapproval key: %s' % e, exc_info=True)
        raise
示例#14
0
def preapproval(request, complete=None, cancel=None):
    if waffle.switch_is_active("currencies"):
        failure = currency(request, do_redirect=False)
        if failure:
            return failure

    today = datetime.today()
    data = {"startDate": today, "endDate": today + timedelta(days=365)}
    store = {"expiry": data["endDate"], "solitude-key": None, "complete": complete, "cancel": cancel}

    if waffle.flag_is_active(request, "solitude-payments"):
        client.create_buyer_if_missing(request.amo_user)
        try:
            result = client.post_preapproval(
                data={
                    "start": data["startDate"].date(),
                    "end": data["endDate"].date(),
                    "uuid": request.amo_user,
                    "return_url": absolutify(reverse("account.payment", args=["complete"])),
                    "cancel_url": absolutify(reverse("account.payment", args=["cancel"])),
                }
            )
        except client.Error:
            paypal_log.error(u"preapproval", exc_info=True)
            raise

        store.update({"key": result["key"], "solitude-key": result["pk"]})
        url = result["paypal_url"]

    else:
        # TODO(solitude): remove this.
        data.update({"pattern": "account.payment"})
        try:
            result = paypal.get_preapproval_key(data)
        except paypal.PaypalError, e:
            paypal_log.error(u"Preapproval key: %s" % e, exc_info=True)
            raise

        store.update({"key": result["preapprovalKey"]})
        url = paypal.get_preapproval_url(result["preapprovalKey"])
示例#15
0
文件: test.py 项目: bebef1987/zamboni
 def test_preapproval_works(self, _call):
     _call.return_value = good_preapproval_string
     eq_(paypal.get_preapproval_key(self.get_data()), good_preapproval_string)
示例#16
0
 def test_preapproval_works(self, _call):
     _call.return_value = good_preapproval_string
     eq_(paypal.get_preapproval_key(self.get_data()),
         good_preapproval_string)