Don't let the user unfollow their own account.
This commit is contained in:
parent
aadf54e0df
commit
4db5954786
2 changed files with 10 additions and 1 deletions
|
@ -167,7 +167,7 @@ def follow(%User{} = follower, %User{} = followed) do
|
|||
|
||||
def unfollow(%User{} = follower, %User{} = followed) do
|
||||
ap_followers = followed.follower_address
|
||||
if following?(follower, followed) do
|
||||
if following?(follower, followed) and follower.ap_id != followed.ap_id do
|
||||
following = follower.following
|
||||
|> List.delete(ap_followers)
|
||||
|
||||
|
|
|
@ -66,6 +66,15 @@ test "unfollow takes a user and another user" do
|
|||
assert user.following == []
|
||||
end
|
||||
|
||||
test "unfollow doesn't unfollow yourself" do
|
||||
user = insert(:user)
|
||||
|
||||
{:error, _} = User.unfollow(user, user)
|
||||
|
||||
assert user.following == [user.ap_id]
|
||||
end
|
||||
|
||||
|
||||
test "test if a user is following another user" do
|
||||
followed = insert(:user)
|
||||
user = insert(:user, %{following: [User.ap_followers(followed)]})
|
||||
|
|
Loading…
Reference in a new issue