Replace UserRepresenter with UserView

This commit is contained in:
dtluna 2017-06-20 00:12:37 +03:00
commit 069daf644d
10 changed files with 90 additions and 96 deletions

View file

@ -1,9 +1,10 @@
defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do
use Pleroma.DataCase
alias Pleroma.{User, Activity, Object}
alias Pleroma.Web.TwitterAPI.Representers.{UserRepresenter, ActivityRepresenter, ObjectRepresenter}
alias Pleroma.Web.TwitterAPI.Representers.{ActivityRepresenter, ObjectRepresenter}
alias Pleroma.Web.ActivityPub.ActivityPub
alias Pleroma.Builders.UserBuilder
alias Pleroma.Web.TwitterAPI.UserView
import Pleroma.Factory
test "an announce activity" do
@ -18,7 +19,7 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do
status = ActivityRepresenter.to_map(announce_activity, %{users: [user, activity_actor], announced_activity: note_activity, for: user})
assert status["id"] == announce_activity.id
assert status["user"] == UserRepresenter.to_map(user, %{for: user})
assert status["user"] == UserView.render("show.json", %{user: user, for: user})
retweeted_status = ActivityRepresenter.to_map(note_activity, %{user: activity_actor, for: user})
assert retweeted_status["repeated"] == true
@ -105,9 +106,8 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do
expected_status = %{
"id" => activity.id,
"user" => UserRepresenter.to_map(user, %{for: follower}),
"user" => UserView.render("show.json", %{user: user, for: follower}),
"is_local" => true,
"attentions" => [],
"statusnet_html" => HtmlSanitizeEx.basic_html(content_html),
"text" => content,
"is_post_verb" => true,
@ -118,7 +118,7 @@ defmodule Pleroma.Web.TwitterAPI.Representers.ActivityRepresenterTest do
ObjectRepresenter.to_map(object)
],
"attentions" => [
UserRepresenter.to_map(mentioned_user, %{for: follower})
UserView.render("show.json", %{user: mentioned_user, for: follower})
],
"fave_num" => 5,
"repeat_num" => 3,

View file

@ -1,87 +0,0 @@
defmodule Pleroma.Web.TwitterAPI.Representers.UserRepresenterTest do
use Pleroma.DataCase
alias Pleroma.User
alias Pleroma.Web.TwitterAPI.Representers.UserRepresenter
alias Pleroma.Builders.UserBuilder
import Pleroma.Factory
setup do
user = insert(:user, bio: "<span>Here's some html</span>")
[user: user]
end
test "A user with an avatar object", %{user: user} do
image = "image"
user = %{ user | avatar: %{ "url" => [%{"href" => image}] }}
represented = UserRepresenter.to_map(user)
assert represented["profile_image_url"] == image
end
test "A user" do
note_activity = insert(:note_activity)
user = User.get_cached_by_ap_id(note_activity.data["actor"])
follower = insert(:user)
second_follower = insert(:user)
User.follow(follower, user)
User.follow(second_follower, user)
User.follow(user, follower)
user = Repo.get!(User, user.id)
image = "https://placehold.it/48x48"
created_at = user.inserted_at |> DateTime.from_naive!("Etc/UTC") |> UserRepresenter.format_asctime
represented = %{
"id" => user.id,
"name" => user.name,
"screen_name" => user.nickname,
"description" => HtmlSanitizeEx.strip_tags(user.bio),
"created_at" => created_at,
# Fake fields
"favourites_count" => 0,
"statuses_count" => 1,
"friends_count" => 1,
"followers_count" => 2,
"profile_image_url" => image,
"profile_image_url_https" => image,
"profile_image_url_profile_size" => image,
"profile_image_url_original" => image,
"following" => false,
"rights" => %{},
"statusnet_profile_url" => user.ap_id
}
assert represented == UserRepresenter.to_map(user)
end
test "A user for a given other follower", %{user: user} do
{:ok, follower} = UserBuilder.insert(%{following: [User.ap_followers(user)]})
image = "https://placehold.it/48x48"
created_at = user.inserted_at |> DateTime.from_naive!("Etc/UTC") |> UserRepresenter.format_asctime
represented = %{
"id" => user.id,
"name" => user.name,
"screen_name" => user.nickname,
"description" => HtmlSanitizeEx.strip_tags(user.bio),
"created_at" => created_at,
# Fake fields
"favourites_count" => 0,
"statuses_count" => 0,
"friends_count" => 0,
"followers_count" => 1,
"profile_image_url" => image,
"profile_image_url_https" => image,
"profile_image_url_profile_size" => image,
"profile_image_url_original" => image,
"following" => true,
"rights" => %{},
"statusnet_profile_url" => user.ap_id
}
assert represented == UserRepresenter.to_map(user, %{for: follower})
end
end