def test_get_cart_from_request_authenticated(django_user_model): token = Cart().token request = get_request(django_user_model, authenticated=True, cookie_token=token) cart = Cart.objects.create(user=request.user, status=Cart.OPEN, token=token) user_cart = decorators.get_cart_from_request(request) assert cart.token == user_cart.token
def test_get_cart_from_request_authenticated_no_cart(django_user_model): token = Cart().token request = get_request(django_user_model, authenticated=True, cookie_token=token) user_cart = decorators.get_cart_from_request(request, create=True) assert user_cart.token == token
def test_get_cart_from_request_anonymous(monkeypatch): request = Mock(user=AnonymousUser(), discounts=[]) empty_cart = Cart() qs_mock = Mock(return_value=[empty_cart]) qs_mock.get.return_value = empty_cart qs_mock.open.return_value = qs_mock qs_mock.filter.return_value = qs_mock cart = decorators.get_cart_from_request(request, cart_queryset=qs_mock) assert cart.pk == empty_cart.pk
def test_get_cart_from_request_anonymous(monkeypatch): request = Mock(user=AnonymousUser(), discounts=[]) empty_cart = Cart() qs_mock = Mock(return_value=[empty_cart]) qs_mock.get.return_value = empty_cart qs_mock.open.return_value = qs_mock monkeypatch.setattr(Cart.objects, 'anonymous', lambda: qs_mock) cart = decorators.get_cart_from_request(request) assert cart.pk == empty_cart.pk