lingo: allow regie's slug in AddItemBasket regie_id parameter (#13541)
This commit is contained in:
parent
f32c3a937f
commit
8e948a6ab3
|
@ -131,7 +131,13 @@ class AddBasketItemApiView(View):
|
|||
|
||||
item.user = user
|
||||
if request.GET.get('regie_id'):
|
||||
item.regie = Regie.objects.get(id=request.GET.get('regie_id'))
|
||||
try:
|
||||
item.regie = Regie.objects.get(slug=request.GET.get('regie_id'))
|
||||
except Regie.DoesNotExist:
|
||||
try:
|
||||
item.regie = Regie.objects.get(id=int(request.GET.get('regie_id')))
|
||||
except (ValueError, Regie.DoesNotExist):
|
||||
return HttpResponseBadRequest('Unknown regie')
|
||||
else:
|
||||
try:
|
||||
item.regie = Regie.objects.get(is_default=True)
|
||||
|
|
|
@ -195,6 +195,23 @@ def test_add_amount_to_basket(key, regie, user):
|
|||
assert BasketItem.objects.filter(amount=Decimal('22.24')).exists()
|
||||
assert BasketItem.objects.filter(amount=Decimal('22.24'))[0].regie_id == regie.id
|
||||
|
||||
url = '%s?email=%s®ie_id=%s' % (
|
||||
reverse('api-add-basket-item'), user_email, regie.slug)
|
||||
data['extra'] = {'amount': '13.67'}
|
||||
url = sign_url(url, settings.LINGO_API_SIGN_KEY)
|
||||
resp = client.post(url, json.dumps(data), content_type='application/json')
|
||||
assert resp.status_code == 200
|
||||
assert json.loads(resp.content)['result'] == 'success'
|
||||
assert BasketItem.objects.filter(amount=Decimal('13.67')).exists()
|
||||
assert BasketItem.objects.filter(amount=Decimal('13.67'))[0].regie_id == regie.id
|
||||
|
||||
url = '%s?email=%s&orig=wcs®ie_id=%s' % (reverse('api-add-basket-item'), user_email, 'scarecrow')
|
||||
url = sign_url(url, key)
|
||||
resp = client.post(url, json.dumps(data), content_type='application/json')
|
||||
|
||||
assert resp.status_code == 400
|
||||
assert resp.content == 'Unknown regie'
|
||||
|
||||
def test_cancel_basket_item(key, regie, user):
|
||||
user_email = 'foo@example.com'
|
||||
User.objects.get_or_create(email=user_email)
|
||||
|
|
Loading…
Reference in New Issue