assert user == fetched_user
end
+ test "gets an existing user, case insensitive" do
+ user = insert(:user, nickname: "nick")
+ fetched_user = User.get_or_fetch_by_nickname("NICK")
+
+ assert user == fetched_user
+ end
+
test "fetches an external user via ostatus if no user exists" do
fetched_user = User.get_or_fetch_by_nickname("shp@social.heldscal.la")
assert fetched_user.nickname == "shp@social.heldscal.la"
name: "Someone",
nickname: "a@b.de",
ap_id: "http...",
- info: %{ some: "info" }
+ info: %{some: "info"},
+ avatar: %{some: "avatar"}
}
test "it confirms validity" do
test "it enforces the fqn format for nicknames" do
cs = User.remote_user_creation(%{@valid_remote | nickname: "bla"})
+ assert cs.changes.local == false
+ assert cs.changes.avatar
refute cs.valid?
end
test "it has required fields" do
- [:bio, :name, :nickname, :ap_id]
+ [:name, :nickname, :ap_id]
|> Enum.each(fn (field) ->
cs = User.remote_user_creation(Map.delete(@valid_remote, field))
refute cs.valid?