Actually put some onformation in the error user, make it actually properly parse
authorlain <lain@soykaf.club>
Mon, 7 Jan 2019 19:59:30 +0000 (20:59 +0100)
committerlain <lain@soykaf.club>
Mon, 7 Jan 2019 19:59:30 +0000 (20:59 +0100)
in conversations.

lib/pleroma/web/twitter_api/views/activity_view.ex
test/web/twitter_api/views/activity_view_test.exs

index 0bae3d06fb7de1732a781cbedd5304b03cd38b43..25e1486c18082500669cba0bc0edabdd35454f3c 100644 (file)
@@ -101,12 +101,14 @@ defmodule Pleroma.Web.TwitterAPI.ActivityView do
         user
 
       true ->
-        error_user()
+        error_user(ap_id)
     end
   end
 
-  defp error_user do
+  defp error_user(ap_id) do
     %User{
+      name: ap_id,
+      ap_id: ap_id,
       info: %User.Info{},
       nickname: "erroruser@example.com",
       inserted_at: NaiveDateTime.utc_now()
index 7f003c2146891f4037e2fcf6f18203ed4f81d10d..bd4878e988180431904e73c04222d4dc10aa45db 100644 (file)
@@ -25,7 +25,7 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
 
   import Mock
 
-  test "returns an error user for activities missing users" do
+  test "returns a temporary ap_id based user for activities missing db users" do
     user = insert(:user)
 
     {:ok, activity} = CommonAPI.post(user, %{"status" => "Hey @shp!", "visibility" => "direct"})
@@ -33,8 +33,11 @@ defmodule Pleroma.Web.TwitterAPI.ActivityViewTest do
     Repo.delete(user)
     Cachex.clear(:user_cache)
 
-    result = ActivityView.render("activity.json", activity: activity)
-    assert result
+    %{"user" => tw_user} = ActivityView.render("activity.json", activity: activity)
+
+    assert tw_user["screen_name"] == "erroruser@example.com"
+    assert tw_user["name"] == user.ap_id
+    assert tw_user["statusnet_profile_url"] == user.ap_id
   end
 
   test "tries to get a user by nickname if fetching by ap_id doesn't work" do