Notifications: Never return nil
in the notification list.
This commit is contained in:
parent
dc31fbfe6c
commit
90083a754d
|
@ -367,6 +367,7 @@ defp do_create_notifications(%Activity{} = activity, options) do
|
|||
do_send = do_send && user in enabled_receivers
|
||||
create_notification(activity, user, do_send)
|
||||
end)
|
||||
|> Enum.filter(& &1)
|
||||
|
||||
{:ok, notifications}
|
||||
end
|
||||
|
|
|
@ -21,7 +21,19 @@ defmodule Pleroma.NotificationTest do
|
|||
alias Pleroma.Web.Push
|
||||
alias Pleroma.Web.Streamer
|
||||
|
||||
# TODO: Test there's no nil notifications
|
||||
|
||||
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
|
||||
user = insert(:user)
|
||||
other_user = insert(:user)
|
||||
|
|
Loading…
Reference in a new issue