From ed70f5636a3eb9de0d726002521a33319d8d94a5 Mon Sep 17 00:00:00 2001 From: vimarshc Date: Thu, 11 May 2017 12:53:10 +0530 Subject: [PATCH] Added failing test case for multiple hyphens in orderingfilter paramter --- tests/test_filters.py | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/tests/test_filters.py b/tests/test_filters.py index d2c11d258..15eb2ccf3 100644 --- a/tests/test_filters.py +++ b/tests/test_filters.py @@ -764,6 +764,22 @@ class OrderingFilterTests(TestCase): {'id': 1, 'title': 'zyx', 'text': 'abc'}, ] + def test_incorrecturl_extrahyphens_ordering(self): + class OrderingListView(generics.ListAPIView): + queryset = OrderingFilterModel.objects.all() + serializer_class = OrderingFilterSerializer + filter_backends = (filters.OrderingFilter,) + ordering = ('title',) + ordering_fields = ('text',) + + view = OrderingListView.as_view() + request = factory.get('/', {'ordering':'--text'}) + response = view(request) + assert response.data == [ + {'id': 3, 'title': 'xwv', 'text': 'cde'}, + {'id': 2, 'title': 'yxw', 'text': 'bcd'}, + {'id': 1, 'title': 'zyx', 'text': 'abc'}, + ] def test_incorrectfield_ordering(self): class OrderingListView(generics.ListAPIView): queryset = OrderingFilterModel.objects.all()