summaryrefslogtreecommitdiff
path: root/test/conversation
diff options
context:
space:
mode:
authorMaksim Pechnikov <parallel588@gmail.com>2019-12-21 20:37:29 +0300
committerMaksim Pechnikov <parallel588@gmail.com>2019-12-21 20:38:59 +0300
commit54c9db38c8035ecc115e136a09a3d991e426959a (patch)
tree496afddf614e826c2c76c7d69e3968a3c118e717 /test/conversation
parent67cb46e15dd5fa16da257a9b0e5166266d10c694 (diff)
parentc51e93978ea2aa0f2d5bcc43bf7c925b2590eece (diff)
downloadpleroma-54c9db38c8035ecc115e136a09a3d991e426959a.tar.gz
pleroma-54c9db38c8035ecc115e136a09a3d991e426959a.zip
Merge branch 'develop' into issue/1383
Diffstat (limited to 'test/conversation')
-rw-r--r--test/conversation/participation_test.exs17
1 files changed, 15 insertions, 2 deletions
diff --git a/test/conversation/participation_test.exs b/test/conversation/participation_test.exs
index 9b2c97963..ba81c0d4b 100644
--- a/test/conversation/participation_test.exs
+++ b/test/conversation/participation_test.exs
@@ -5,7 +5,9 @@
defmodule Pleroma.Conversation.ParticipationTest do
use Pleroma.DataCase
import Pleroma.Factory
+ alias Pleroma.Conversation
alias Pleroma.Conversation.Participation
+ alias Pleroma.Repo
alias Pleroma.User
alias Pleroma.Web.CommonAPI
@@ -98,7 +100,9 @@ defmodule Pleroma.Conversation.ParticipationTest do
assert participation.user_id == user.id
assert participation.conversation_id == conversation.id
+ # Needed because updated_at is accurate down to a second
:timer.sleep(1000)
+
# Creating again returns the same participation
{:ok, %Participation{} = participation_two} =
Participation.create_for_user_and_conversation(user, conversation)
@@ -150,9 +154,7 @@ defmodule Pleroma.Conversation.ParticipationTest do
test "gets all the participations for a user, ordered by updated at descending" do
user = insert(:user)
{:ok, activity_one} = CommonAPI.post(user, %{"status" => "x", "visibility" => "direct"})
- :timer.sleep(1000)
{:ok, activity_two} = CommonAPI.post(user, %{"status" => "x", "visibility" => "direct"})
- :timer.sleep(1000)
{:ok, activity_three} =
CommonAPI.post(user, %{
@@ -161,6 +163,17 @@ defmodule Pleroma.Conversation.ParticipationTest do
"in_reply_to_status_id" => activity_one.id
})
+ # Offset participations because the accuracy of updated_at is down to a second
+
+ for {activity, offset} <- [{activity_two, 1}, {activity_three, 2}] do
+ conversation = Conversation.get_for_ap_id(activity.data["context"])
+ participation = Participation.for_user_and_conversation(user, conversation)
+ updated_at = NaiveDateTime.add(Map.get(participation, :updated_at), offset)
+
+ Ecto.Changeset.change(participation, %{updated_at: updated_at})
+ |> Repo.update!()
+ end
+
assert [participation_one, participation_two] = Participation.for_user(user)
object2 = Pleroma.Object.normalize(activity_two)