Skip to content

Commit

Permalink
Fix pagination tests
Browse files Browse the repository at this point in the history
  • Loading branch information
ddelange committed Mar 22, 2023
1 parent df5d07a commit e44d8de
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
2 changes: 1 addition & 1 deletion rest_framework/pagination.py
Original file line number Diff line number Diff line change
Expand Up @@ -621,7 +621,7 @@ def paginate_queryset(self, queryset, request, view=None):
queryset = queryset.order_by(*self.ordering)

# If we have a cursor with a fixed position then filter by that.
if current_position is not None:
if str(current_position) != 'None':
order = self.ordering[0]
is_reversed = order.startswith('-')
order_attr = order.lstrip('-')
Expand Down
10 changes: 7 additions & 3 deletions tests/test_pagination.py
Original file line number Diff line number Diff line change
Expand Up @@ -951,17 +951,21 @@ class MockQuerySet:
def __init__(self, items):
self.items = items

def filter(self, created__gt=None, created__lt=None):
def filter(self, q):
q_args = dict(q.deconstruct()[1])
created__gt = q_args.get('created__gt')
created__lt = q_args.get('created__lt')

if created__gt is not None:
return MockQuerySet([
item for item in self.items
if item.created > int(created__gt)
if item.created is None or item.created > int(created__gt)
])

assert created__lt is not None
return MockQuerySet([
item for item in self.items
if item.created < int(created__lt)
if item.created is None or item.created < int(created__lt)
])

def order_by(self, *ordering):
Expand Down

0 comments on commit e44d8de

Please sign in to comment.