Merge branch 'develop' of git.pleroma.social:pleroma/pleroma into develop
[akkoma] / test / web / mastodon_api / account_view_test.exs
index 0106fbcc0f5c43797ba71a95a1db56cc88ea536f..c62cb4f36265c9f47e172d28f09d65bc31149f3d 100644 (file)
@@ -2,9 +2,10 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
   use Pleroma.DataCase
   import Pleroma.Factory
   alias Pleroma.Web.MastodonAPI.AccountView
+  alias Pleroma.User
 
   test "Represent a user account" do
-    user = insert(:user, %{info: %{"note_count" => 5, "follower_count" => 3}, nickname: "shp@shitposter.club"})
+    user = insert(:user, %{info: %{"note_count" => 5, "follower_count" => 3}, nickname: "shp@shitposter.club", inserted_at: ~N[2017-08-15 15:47:06.597036]})
 
     expected = %{
       id: user.id,
@@ -12,7 +13,7 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
       acct: user.nickname,
       display_name: user.name,
       locked: false,
-      created_at: user.inserted_at,
+      created_at: "2017-08-15T15:47:06.000Z",
       followers_count: 3,
       following_count: 0,
       statuses_count: 5,
@@ -21,7 +22,12 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
       avatar: "https://placehold.it/48x48",
       avatar_static: "https://placehold.it/48x48",
       header: "https://placehold.it/700x335",
-      header_static: "https://placehold.it/700x335"
+      header_static: "https://placehold.it/700x335",
+      source: %{
+        note: "",
+        privacy: "public",
+        sensitive: "false"
+      }
     }
 
     assert expected == AccountView.render("account.json", %{user: user})
@@ -39,4 +45,24 @@ defmodule Pleroma.Web.MastodonAPI.AccountViewTest do
 
     assert expected == AccountView.render("mention.json", %{user: user})
   end
+
+  test "represent a relationship" do
+    user = insert(:user)
+    other_user = insert(:user)
+
+    {:ok, user} = User.follow(user, other_user)
+    {:ok, user} = User.block(user, other_user)
+
+    expected = %{
+      id: other_user.id,
+      following: true,
+      followed_by: false,
+      blocking: true,
+      muting: false,
+      requested: false,
+      domain_blocking: false
+    }
+
+    assert expected == AccountView.render("relationship.json", %{user: user, target: other_user})
+  end
 end