X-Git-Url: http://git.squeep.com/?a=blobdiff_plain;f=test%2Fuser_test.exs;h=35de0a7ce384c95d1ebd7f0b64feb4e004870e0c;hb=8aa639a450c94fc3fb8ea812b334892324ffd51a;hp=16d43e6195367bdb72ed8eed83ca148390335ff2;hpb=30e9b22f96f2bf1cd895e993190f40afba159bb6;p=akkoma diff --git a/test/user_test.exs b/test/user_test.exs index 16d43e619..35de0a7ce 100644 --- a/test/user_test.exs +++ b/test/user_test.exs @@ -46,21 +46,22 @@ defmodule Pleroma.UserTest do {:error, _} = User.follow(user, followed) end - test "following a remote user will ensure a websub subscription is present" do - user = insert(:user) - {:ok, followed} = OStatus.make_user("shp@social.heldscal.la") + # This is a somewhat useless test. + # test "following a remote user will ensure a websub subscription is present" do + # user = insert(:user) + # {:ok, followed} = OStatus.make_user("shp@social.heldscal.la") - assert followed.local == false + # assert followed.local == false - {:ok, user} = User.follow(user, followed) - assert User.ap_followers(followed) in user.following + # {:ok, user} = User.follow(user, followed) + # assert User.ap_followers(followed) in user.following - query = from w in WebsubClientSubscription, - where: w.topic == ^followed.info["topic"] - websub = Repo.one(query) + # query = from w in WebsubClientSubscription, + # where: w.topic == ^followed.info["topic"] + # websub = Repo.one(query) - assert websub - end + # assert websub + # end test "unfollow takes a user and another user" do followed = insert(:user) @@ -101,13 +102,14 @@ defmodule Pleroma.UserTest do email: "email@example.com" } - test "it requires a bio, email, name, nickname and password" do + test "it requires an email, name, nickname and password, bio is optional" do @full_user_data |> Map.keys |> Enum.each(fn (key) -> params = Map.delete(@full_user_data, key) changeset = User.register_changeset(%User{}, params) - assert changeset.valid? == false + + assert (if key == :bio, do: changeset.valid?, else: not changeset.valid?) end) end @@ -326,7 +328,7 @@ defmodule Pleroma.UserTest do assert [addressed] == User.get_recipients_from_activity(activity) {:ok, user} = User.follow(user, actor) - {:ok, user_two} = User.follow(user_two, actor) + {:ok, _user_two} = User.follow(user_two, actor) recipients = User.get_recipients_from_activity(activity) assert length(recipients) == 2 assert user in recipients @@ -370,4 +372,15 @@ defmodule Pleroma.UserTest do refute Repo.get(Activity, activity.id) end + + test "get_public_key_for_ap_id fetches a user that's not in the db" do + assert {:ok, _key} = User.get_public_key_for_ap_id("http://mastodon.example.org/users/admin") + end + + test "insert or update a user from given data" do + user = insert(:user, %{nickname: "nick@name.de"}) + data = %{ ap_id: user.ap_id <> "xxx", name: user.name, nickname: user.nickname } + + assert {:ok, %User{}} = User.insert_or_update_user(data) + end end