Merge branch 'fix-notification-filtering' into 'develop'
Notifications: Never return `nil` in the notification list. See merge request pleroma/pleroma!2705
This commit is contained in:
commit
7bb3618939
@ -367,6 +367,7 @@ defp do_create_notifications(%Activity{} = activity, options) do
|
|||||||
do_send = do_send && user in enabled_receivers
|
do_send = do_send && user in enabled_receivers
|
||||||
create_notification(activity, user, do_send)
|
create_notification(activity, user, do_send)
|
||||||
end)
|
end)
|
||||||
|
|> Enum.reject(&is_nil/1)
|
||||||
|
|
||||||
{:ok, notifications}
|
{:ok, notifications}
|
||||||
end
|
end
|
||||||
|
@ -22,6 +22,16 @@ defmodule Pleroma.NotificationTest do
|
|||||||
alias Pleroma.Web.Streamer
|
alias Pleroma.Web.Streamer
|
||||||
|
|
||||||
describe "create_notifications" do
|
describe "create_notifications" do
|
||||||
|
test "never returns nil" do
|
||||||
|
user = insert(:user)
|
||||||
|
other_user = insert(:user, %{invisible: true})
|
||||||
|
|
||||||
|
{:ok, activity} = CommonAPI.post(user, %{status: "yeah"})
|
||||||
|
{:ok, activity} = CommonAPI.react_with_emoji(activity.id, other_user, "☕")
|
||||||
|
|
||||||
|
refute {:ok, [nil]} == Notification.create_notifications(activity)
|
||||||
|
end
|
||||||
|
|
||||||
test "creates a notification for an emoji reaction" do
|
test "creates a notification for an emoji reaction" do
|
||||||
user = insert(:user)
|
user = insert(:user)
|
||||||
other_user = insert(:user)
|
other_user = insert(:user)
|
||||||
|
Loading…
Reference in New Issue
Block a user