mirror of
https://code.eliotberriot.com/funkwhale/funkwhale.git
synced 2025-10-04 04:09:16 +02:00
More configurable pagination
This commit is contained in:
parent
b36b03383e
commit
a3ad476c88
4 changed files with 56 additions and 3 deletions
29
api/tests/common/test_pagination.py
Normal file
29
api/tests/common/test_pagination.py
Normal file
|
@ -0,0 +1,29 @@
|
|||
import pytest
|
||||
|
||||
from funkwhale_api.common import pagination
|
||||
|
||||
|
||||
@pytest.mark.parametrize(
|
||||
"view_max_page_size, view_default_page_size, request_page_size, expected",
|
||||
[
|
||||
(50, 50, None, 50),
|
||||
(50, 25, None, 25),
|
||||
(25, None, None, 25),
|
||||
(50, 25, 100, 50),
|
||||
(50, None, 100, 50),
|
||||
(50, 25, 33, 33),
|
||||
],
|
||||
)
|
||||
def test_funkwhale_pagination_uses_view_page_size(
|
||||
view_max_page_size, view_default_page_size, request_page_size, expected, mocker
|
||||
):
|
||||
p = pagination.FunkwhalePagination()
|
||||
|
||||
p.view = mocker.Mock(
|
||||
max_page_size=view_max_page_size, default_page_size=view_default_page_size
|
||||
)
|
||||
query = {}
|
||||
if request_page_size:
|
||||
query["page_size"] = request_page_size
|
||||
request = mocker.Mock(query_params=query)
|
||||
assert p.get_page_size(request) == expected
|
Loading…
Add table
Add a link
Reference in a new issue