|
|
|
@ -46,6 +46,43 @@ defmodule Pleroma.NotificationTest do
|
|
|
|
|
|
|
|
|
|
assert nil == Notification.create_notification(activity, author)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
test "it doesn't create a notification for follow-unfollow-follow chains" do
|
|
|
|
|
user = insert(:user)
|
|
|
|
|
followed_user = insert(:user)
|
|
|
|
|
{:ok, _, _, activity} = TwitterAPI.follow(user, %{"user_id" => followed_user.id})
|
|
|
|
|
Notification.create_notification(activity, followed_user)
|
|
|
|
|
TwitterAPI.unfollow(user, %{"user_id" => followed_user.id})
|
|
|
|
|
{:ok, _, _, activity_dupe} = TwitterAPI.follow(user, %{"user_id" => followed_user.id})
|
|
|
|
|
assert nil == Notification.create_notification(activity_dupe, followed_user)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
test "it doesn't create a notification for like-unlike-like chains" do
|
|
|
|
|
user = insert(:user)
|
|
|
|
|
liked_user = insert(:user)
|
|
|
|
|
{:ok, status} = TwitterAPI.create_status(liked_user, %{"status" => "Yui is best yuru"})
|
|
|
|
|
{:ok, fav_status} = TwitterAPI.fav(user, status.id)
|
|
|
|
|
Notification.create_notification(fav_status, liked_user)
|
|
|
|
|
TwitterAPI.unfav(user, status.id)
|
|
|
|
|
{:ok, dupe} = TwitterAPI.fav(user, status.id)
|
|
|
|
|
assert nil == Notification.create_notification(dupe, liked_user)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
test "it doesn't create a notification for repeat-unrepeat-repeat chains" do
|
|
|
|
|
user = insert(:user)
|
|
|
|
|
retweeted_user = insert(:user)
|
|
|
|
|
|
|
|
|
|
{:ok, status} =
|
|
|
|
|
TwitterAPI.create_status(retweeted_user, %{
|
|
|
|
|
"status" => "Send dupe notifications to the shadow realm"
|
|
|
|
|
})
|
|
|
|
|
|
|
|
|
|
{:ok, retweeted_activity} = TwitterAPI.repeat(user, status.id)
|
|
|
|
|
Notification.create_notification(retweeted_activity, retweeted_user)
|
|
|
|
|
TwitterAPI.unrepeat(user, status.id)
|
|
|
|
|
{:ok, dupe} = TwitterAPI.repeat(user, status.id)
|
|
|
|
|
assert nil == Notification.create_notification(dupe, retweeted_user)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
describe "get notification" do
|
|
|
|
|