diff options
author | Mark Felder <feld@FreeBSD.org> | 2020-06-25 14:16:28 -0500 |
---|---|---|
committer | Mark Felder <feld@FreeBSD.org> | 2020-06-25 14:26:21 -0500 |
commit | 433c01b370f4bf68d3f016d86c1527b1319e7a0c (patch) | |
tree | 607d6c7e4e578d6e0ff95963b5565baefc207d85 /test/notification_test.exs | |
parent | d4b20c96c4030ebb5eb908dc6efcf45be7a8355d (diff) | |
parent | 1d0804b49f56fe722b12f83269d98acfdee7ac77 (diff) | |
download | pleroma-433c01b370f4bf68d3f016d86c1527b1319e7a0c.tar.gz pleroma-433c01b370f4bf68d3f016d86c1527b1319e7a0c.zip |
Merge branch 'develop' into refactor/notification_settings
Diffstat (limited to 'test/notification_test.exs')
-rw-r--r-- | test/notification_test.exs | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/test/notification_test.exs b/test/notification_test.exs index a1a7cee2a..d7df9c36c 100644 --- a/test/notification_test.exs +++ b/test/notification_test.exs @@ -10,6 +10,7 @@ defmodule Pleroma.NotificationTest do alias Pleroma.FollowingRelationship alias Pleroma.Notification + alias Pleroma.Repo alias Pleroma.Tests.ObanHelpers alias Pleroma.User alias Pleroma.Web.ActivityPub.ActivityPub @@ -31,6 +32,7 @@ defmodule Pleroma.NotificationTest do {:ok, [notification]} = Notification.create_notifications(activity) assert notification.user_id == user.id + assert notification.type == "pleroma:emoji_reaction" end test "notifies someone when they are directly addressed" do @@ -48,6 +50,7 @@ defmodule Pleroma.NotificationTest do notified_ids = Enum.sort([notification.user_id, other_notification.user_id]) assert notified_ids == [other_user.id, third_user.id] assert notification.activity_id == activity.id + assert notification.type == "mention" assert other_notification.activity_id == activity.id assert [%Pleroma.Marker{unread_count: 2}] = @@ -298,6 +301,14 @@ defmodule Pleroma.NotificationTest do assert {:ok, []} == Notification.create_notifications(status) end + + test "it disables notifications from people who are invisible" do + author = insert(:user, invisible: true) + user = insert(:user) + + {:ok, status} = CommonAPI.post(author, %{status: "hey @#{user.nickname}"}) + refute Notification.create_notification(status, user) + end end describe "follow / follow_request notifications" do @@ -330,9 +341,12 @@ defmodule Pleroma.NotificationTest do # After request is accepted, the same notification is rendered with type "follow": assert {:ok, _} = CommonAPI.accept_follow_request(user, followed_user) - notification_id = notification.id - assert [%{id: ^notification_id}] = Notification.for_user(followed_user) - assert %{type: "follow"} = NotificationView.render("show.json", render_opts) + notification = + Repo.get(Notification, notification.id) + |> Repo.preload(:activity) + + assert %{type: "follow"} = + NotificationView.render("show.json", notification: notification, for: followed_user) end test "it doesn't create a notification for follow-unfollow-follow chains" do |