Assorted fixes.
authorlain <lain@soykaf.club>
Fri, 30 Nov 2018 16:08:02 +0000 (17:08 +0100)
committerlain <lain@soykaf.club>
Fri, 30 Nov 2018 16:08:02 +0000 (17:08 +0100)
lib/pleroma/user/info.ex
lib/pleroma/web/websub/websub.ex
test/web/ostatus/ostatus_test.exs
test/web/twitter_api/views/user_view_test.exs
test/web/websub/websub_test.exs

index 49387163a054a57cca8eace5dcdafc7a216b89d4..4e2c5472d3789375de4a2fddda61952efd857101 100644 (file)
@@ -20,6 +20,8 @@ defmodule Pleroma.User.Info do
     field(:settings, :map, default: nil)
     field(:magic_key, :string, default: nil)
     field(:uri, :string, default: nil)
+    field(:topic, :string, default: nil)
+    field(:hub, :string, default: nil)
     # topic, subject, salmon, subscribe_address, uri
   end
 
@@ -99,7 +101,9 @@ defmodule Pleroma.User.Info do
       :banner,
       :locked,
       :magic_key,
-      :uri
+      :uri,
+      :hub,
+      :topic
     ])
   end
 
index e494811f9f700cd5ee941f4f230942ff7da7552a..440b486650bdf16bf125c4b95e8d614dc006a1a1 100644 (file)
@@ -146,7 +146,7 @@ defmodule Pleroma.Web.Websub do
   end
 
   def subscribe(subscriber, subscribed, requester \\ &request_subscription/1) do
-    topic = subscribed.info["topic"]
+    topic = subscribed.info.topic
     # FIXME: Race condition, use transactions
     {:ok, subscription} =
       with subscription when not is_nil(subscription) <-
@@ -158,7 +158,7 @@ defmodule Pleroma.Web.Websub do
         _e ->
           subscription = %WebsubClientSubscription{
             topic: topic,
-            hub: subscribed.info["hub"],
+            hub: subscribed.info.hub,
             subscribers: [subscriber.ap_id],
             state: "requested",
             secret: :crypto.strong_rand_bytes(8) |> Base.url_encode64(),
index b2f25d215a56ca654083550059ddb86182828b07..6e526301481f233050f52e8a88121c6d44520824 100644 (file)
@@ -447,7 +447,7 @@ defmodule Pleroma.Web.OStatusTest do
     end
   end
 
-  test "it doesn't add nil in the do field" do
+  test "it doesn't add nil in the to field" do
     incoming = File.read!("test/fixtures/nil_mention_entry.xml")
     {:ok, [activity]} = OStatus.handle_incoming(incoming)
 
index 2c583c0d35a25cafb76567d0a85aa91b6006b980..e69ca24a9e6df860eb81a277a5977df912318207 100644 (file)
@@ -31,10 +31,10 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do
     expected =
       "<img height=\"32px\" width=\"32px\" alt=\"karjalanpiirakka\" title=\"karjalanpiirakka\" src=\"/file.png\" /> man"
 
-    user = %{
-      user
-      | info: %{
-          "source_data" => %{
+    user =
+      insert(:user, %{
+        info: %{
+          source_data: %{
             "tag" => [
               %{
                 "type" => "Emoji",
@@ -43,10 +43,10 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do
               }
             ]
           }
-        }
-    }
+        },
+        name: ":karjalanpiirakka: man"
+      })
 
-    user = %{user | name: ":karjalanpiirakka: man"}
     represented = UserView.render("show.json", %{user: user})
     assert represented["name_html"] == expected
   end
@@ -103,7 +103,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do
   end
 
   test "A user for a given other follower", %{user: user} do
-    {:ok, follower} = UserBuilder.insert(%{following: [User.ap_followers(user)]})
+    follower = insert(:user, %{following: [User.ap_followers(user)]})
     {:ok, user} = User.update_follower_count(user)
     image = "http://localhost:4001/images/avi.png"
     banner = "http://localhost:4001/images/banner.png"
@@ -186,7 +186,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do
   end
 
   test "a user that is a moderator" do
-    user = insert(:user, %{info: %{"is_moderator" => true}})
+    user = insert(:user, %{info: %{is_moderator: true}})
     represented = UserView.render("show.json", %{user: user, for: user})
 
     assert represented["rights"]["delete_others_notice"]
@@ -250,7 +250,7 @@ defmodule Pleroma.Web.TwitterAPI.UserViewTest do
     user =
       insert(:user, %{
         info: %{
-          "source_data" => %{
+          source_data: %{
             "attachment" =>
               Enum.map(fields, fn field -> Map.put(field, "type", "PropertyValue") end)
           }
index 5914a37fc167a527680b421bb3f3a76725992fcb..da7bc9112ec8131bf18c1911f2832da4faeca1a6 100644 (file)
@@ -99,7 +99,7 @@ defmodule Pleroma.Web.WebsubTest do
 
   test "initiate a subscription for a given user and topic" do
     subscriber = insert(:user)
-    user = insert(:user, %{info: %{"topic" => "some_topic", "hub" => "some_hub"}})
+    user = insert(:user, %{info: %Pleroma.User.Info{topic: "some_topic", hub: "some_hub"}})
 
     {:ok, websub} = Websub.subscribe(subscriber, user, &accepting_verifier/1)
     assert websub.subscribers == [subscriber.ap_id]