forked from AkkomaGang/akkoma
Merge branch 'fix/pagination-regression' into 'develop'
Do not try to guess which pagination we need by the existence of an :offset param. Closes #2399 See merge request pleroma/pleroma!3230
This commit is contained in:
commit
20a269ed69
3 changed files with 18 additions and 6 deletions
|
@ -608,11 +608,7 @@ def fetch_user_activities(user, reading_user, params \\ %{}) do
|
|||
|> Map.put(:muting_user, reading_user)
|
||||
end
|
||||
|
||||
pagination_type =
|
||||
cond do
|
||||
!Map.has_key?(params, :offset) -> :keyset
|
||||
true -> :offset
|
||||
end
|
||||
pagination_type = Map.get(params, :pagination_type) || :keyset
|
||||
|
||||
%{
|
||||
godmode: params[:godmode],
|
||||
|
|
|
@ -110,7 +110,8 @@ def list_user_statuses(%{assigns: %{user: admin}} = conn, %{"nickname" => nickna
|
|||
limit: page_size,
|
||||
offset: (page - 1) * page_size,
|
||||
godmode: godmode,
|
||||
exclude_reblogs: not with_reblogs
|
||||
exclude_reblogs: not with_reblogs,
|
||||
pagination_type: :offset
|
||||
})
|
||||
|
||||
conn
|
||||
|
|
|
@ -469,6 +469,21 @@ test "muted reactions", %{user: user, conn: conn} do
|
|||
}
|
||||
] = result
|
||||
end
|
||||
|
||||
test "paginates a user's statuses", %{user: user, conn: conn} do
|
||||
{:ok, post_1} = CommonAPI.post(user, %{status: "first post"})
|
||||
{:ok, post_2} = CommonAPI.post(user, %{status: "second post"})
|
||||
|
||||
response_1 = get(conn, "/api/v1/accounts/#{user.id}/statuses?limit=1")
|
||||
assert [res] = json_response(response_1, 200)
|
||||
assert res["id"] == post_2.id
|
||||
|
||||
response_2 = get(conn, "/api/v1/accounts/#{user.id}/statuses?limit=1&max_id=#{res["id"]}")
|
||||
assert [res] = json_response(response_2, 200)
|
||||
assert res["id"] == post_1.id
|
||||
|
||||
refute response_1 == response_2
|
||||
end
|
||||
end
|
||||
|
||||
defp local_and_remote_activities(%{local: local, remote: remote}) do
|
||||
|
|
Loading…
Reference in a new issue