Преглед на файлове

Conversations: Fetch users in one query.

tags/v1.1.4
lain преди 5 години
родител
ревизия
970f71e222
променени са 2 файла, в които са добавени 5 реда и са изтрити 2 реда
  1. +2
    -2
      lib/pleroma/conversation/participation.ex
  2. +3
    -0
      test/conversation/participation_test.exs

+ 2
- 2
lib/pleroma/conversation/participation.ex Целия файл

@@ -59,10 +59,10 @@ defmodule Pleroma.Conversation.Participation do
def for_user(user, params \\ %{}) do
from(p in __MODULE__,
where: p.user_id == ^user.id,
order_by: [desc: p.updated_at]
order_by: [desc: p.updated_at],
preload: [conversation: [:users]]
)
|> Pleroma.Pagination.fetch_paginated(params)
|> Repo.preload(conversation: [:users])
end

def for_user_with_last_activity_id(user, params \\ %{}) do


+ 3
- 0
test/conversation/participation_test.exs Целия файл

@@ -72,8 +72,11 @@ defmodule Pleroma.Conversation.ParticipationTest do
object2 = Pleroma.Object.normalize(activity_two)
object3 = Pleroma.Object.normalize(activity_three)

user = Repo.get(Pleroma.User, user.id)

assert participation_one.conversation.ap_id == object3.data["context"]
assert participation_two.conversation.ap_id == object2.data["context"]
assert participation_one.conversation.users == [user]

# Pagination
assert [participation_one] = Participation.for_user(user, %{"limit" => 1})


Loading…
Отказ
Запис