Commit b3716ccb by homm

make MockObject, MockQuerySet and ExamplePagination visible outside of setup

parent ab03729b
...@@ -186,6 +186,7 @@ class TestPageNumberPagination: ...@@ -186,6 +186,7 @@ class TestPageNumberPagination:
def setup(self): def setup(self):
class ExamplePagination(pagination.PageNumberPagination): class ExamplePagination(pagination.PageNumberPagination):
page_size = 5 page_size = 5
self.pagination = ExamplePagination() self.pagination = ExamplePagination()
self.queryset = range(1, 101) self.queryset = range(1, 101)
...@@ -475,32 +476,30 @@ class TestCursorPagination: ...@@ -475,32 +476,30 @@ class TestCursorPagination:
""" """
Unit tests for `pagination.CursorPagination`. Unit tests for `pagination.CursorPagination`.
""" """
def setup(self):
class MockObject(object): class MockObject(object):
def __init__(self, idx): def __init__(self, idx):
self.created = idx self.created = idx
class MockQuerySet(object): class MockQuerySet(object):
def __init__(self, items): def __init__(self, items):
self.items = items self.items = list(items)
def filter(self, created__gt=None, created__lt=None): def filter(self, created__gt=None, created__lt=None):
if created__gt is not None: if created__gt is not None:
return MockQuerySet([ return type(self)([
item for item in self.items item for item in self.items
if item.created > int(created__gt) if item.created > int(created__gt)
]) ])
assert created__lt is not None assert created__lt is not None
return MockQuerySet([ return type(self)([
item for item in self.items item for item in self.items
if item.created < int(created__lt) if item.created < int(created__lt)
]) ])
def order_by(self, *ordering): def order_by(self, *ordering):
if ordering[0].startswith('-'): if ordering[0].startswith('-'):
return MockQuerySet(list(reversed(self.items))) return type(self)(list(reversed(self.items)))
return self return self
def __getitem__(self, sliced): def __getitem__(self, sliced):
...@@ -510,17 +509,18 @@ class TestCursorPagination: ...@@ -510,17 +509,18 @@ class TestCursorPagination:
page_size = 5 page_size = 5
ordering = 'created' ordering = 'created'
self.pagination = ExamplePagination() def setup(self):
self.queryset = MockQuerySet([ self.pagination = self.ExamplePagination()
MockObject(idx) for idx in [ self.queryset = self.MockQuerySet(
map(self.MockObject, [
1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
1, 2, 3, 4, 4, 1, 2, 3, 4, 4,
4, 4, 5, 6, 7, 4, 4, 5, 6, 7,
7, 7, 7, 7, 7, 7, 7, 7, 7, 7,
7, 7, 7, 8, 9, 7, 7, 7, 8, 9,
9, 9, 9, 9, 9 9, 9, 9, 9, 9
]
]) ])
)
def get_pages(self, url): def get_pages(self, url):
""" """
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment